Codeforces 808A Lucky Year 题解

来源:互联网 发布:ipython 源码下载 编辑:程序博客网 时间:2024/06/15 09:13

题意

给你一个数字,问它和比它大的第一个只有一位非0数字的数差多少

思路

下一个只有一位非0数字的数,就是先把当前数除最高位变成0,然后再把最高位加1,所以这个答案就是10lgxx mod 10lgx

代码

#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;}
原创粉丝点击