今天打比赛遇见一个题目,第二题,从开始五分钟到结束,一直在调试自己的屎山.
题目本质上就是四舍五入
四舍五入的基本代码:(x+5)/10*10;
给出题目,,题意为按要求进行四舍五入,即从个位,十位,百位,进行四舍五入.
#include<iostream>
#include<algorithm>
#include<math.h>
using namespace std;
typedef long long int ll;
int main()
{
ll n,k;
cin>>n>>k;
int i;
for(i=1;i<=k;i++){
n=(n+5*(ll)pow(10,i-1))/(ll)pow(10,i)*(ll)pow(10,i);
}
cout<<n<<endl;
//system("pause");
return 0;
}
因为pow函数出来的是double类型,所以要进行强制类型转换一下.