题意:输入n,求一个大于n的数m,要求m的各位数字之和是10的倍数
看到这么长的时间,果断暴力啊(如果暴力不是为了杀戮,那就毫无意义了~~)
自己写的高精度加单精度模版,太烂不能看
#include<iostream>
#include<cstdio>
using namespace std;
const int L=100000+5;
string f(string x,int y)
{
string ans;
int na[L]={0};
int l=x.size();
int i;
for(i=0;i<l;i++)
{
na[l-1-i]=x[i]-'0';
}
na[0]+=y;
for(i=0;i<l;i++)
{
na[i+1]+=na[i]/10;
na[i]=na[i]%10;
}
if(na[l]){l++;}
for(i=l-1;i>=0;i--)
{
ans+=na[i]+'0';
}
return ans;
}
int main()
{
string str;
int t;
cin>>t;
getchar();
while(t--)
{
cin>>str;
int l=str.size();
int sum=0;
int i;
for(i=0;i<l;i++)
{
sum+=str[i]-'0';
}
if(sum%10==0)
{
str=f(str,1);
sum=0;
l=str.size();
for(i=0;i<l;i++)
{
sum+=str[i]-'0';
}
}
while(sum%10!=0)
{
str=f(str,1);
sum=0;
l=str.size();
for(i=0;i<l;i++)
{
sum+=str[i]-'0';
}
}
cout<<str<<endl;
}
return 0;
}