#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);
}
1049. Counting Ones (30) PAT甲级
最新推荐文章于 2021-08-26 10:06:41 发布
本文介绍了一个使用C语言解决特定计数问题的方法。通过分析输入数字中每个位数的特点,该程序能够计算出满足特定条件的位数总和。文章详细展示了如何通过循环逐位检查数字,并根据不同位数的情况更新答案。
2072

被折叠的 条评论
为什么被折叠?



