题意
给你一个数字,问它和比它大的第一个只有一位非0数字的数差多少
思路
下一个只有一位非0数字的数,就是先把当前数除最高位变成0,然后再把最高位加1,所以这个答案就是 10⌊lgx⌋−x mod 10⌊lgx⌋
代码
#include <cstdio>
int main()
{
int n,t,nn,ans;
scanf("%d",&n);
nn=n;
t=0;
while(nn>0)
{
nn/=10;
t++;
}
ans=1;
for(int i=0;i<t-1;i++)
ans*=10;
printf("%d\n",ans-n%ans);
return 0;
}