1049. Counting Ones (30) PAT甲级

来源:互联网 发布:网站整站优化方案 编辑:程序博客网 时间:2024/06/05 14:14

传送门

#include<stdio.h>int main(){    int n;    int ans=0;    int left;//当前位前面的位数    int right;//当前位后面的位数     int a=1;    int pos;//当前位     scanf("%d",&n);    while(n/a!=0){        left=n/(a*10);        pos=n/a%10;        right=n%a;        if(pos==0)  ans+=left*a;        else if(pos==1) ans+=left*a+right+1;        else ans+=(left+1)*a;        a*=10;    }    printf("%d\n",ans);}
0 0