忙里偷闲娱乐一下 数数字(二) 24小时后结贴
十进制数11,包含2个1。12包含1个1。现在请计算1到1万亿(包含1和1万亿)之间的数(十进制)所包含的1的总数。
24小时后结贴,100分只给第一个回答正确的朋友。欢迎打酱油的旁观。
补充说明:好像有人理解有歧义,我指的是1到1万亿的所有整数中一共包含的1的个数,不是之间的某一个数所包含的1的个数。
[ 本帖最后由 beyondyf 于 2012-6-19 22:44 编辑 ]
2012-06-19 22:14
2012-06-19 22:35
2012-06-19 22:35

2012-06-19 22:40
2012-06-19 22:40
2012-06-19 23:01
2012-06-19 23:06
2012-06-19 23:19
2012-06-19 23:19
程序代码:
unsigned long long howmuch_one(unsigned long long target)
{
if (target<=10)
{
return 1;
}
return target/10 + 10*howmuch_one(target/10);
}
void main()
{
unsigned long long i = 1000000000000;
printf("%lld\n",howmuch_one(i)+1);
}
2012-06-19 23:19