ACM20题

来源:互联网 发布:欧美爱情动作片 知乎 编辑:程序博客网 时间:2024/05/21 07:56

这个题目通过有道看了很多遍才明白具体的意思,就是输入a,b,x的b次方最接近a,求整数a。

思路:双循环,从1开始,判断x的b次方刚刚超过a,然后再判断x-1的b次方,x的b次方和a哪个相差的少,最后输出相差最少的那个x。

代码:#include<iostream>
using namespace std;
int main()
{
int b,n,j,a,sum=1,t,d;
while(cin>>b>>n&&b!=0&&n!=0)
{
sum=1;

for(t=1;sum<=b;t++)
{
sum=1;
d=1;
a=t-1;
for(j=0;j<n;j++)
{
sum=sum*t;
d=d*a;

}
}
if((sum-b)>(b-d))
cout<<t-2<<endl;
else
cout<<t-1<<endl;
}
return 0;
}

总结:有了明确的思路,加上细心,就会a题,加油。会努力的。

0 0