0
已解决
董宇昊
初级启示者
初级启示者
#include<bits/stdc++.h>
using namespace std;
int main() {
int yzm,dh;
cin>>yzm;
for(int i=1;i<=yzm;i++){
int j=i;
while(j){
dh++;
j/=10;
}
}
cout<<dh;
return 0;
}
//0分
1288 序列数字个数(seqnum)
经验值:400
不许抄袭,一旦发现,直接清空经验!
题目描述 Description
最近正在上映电影“魔境仙踪”,爱魔幻故事的卡卡西特别想去看,于是央求着妈妈带她去影院。卡卡西的妈妈对她微微一笑,说:“那好吧,卡卡西,让我来考考你,如果你能解决我出的难题,就可以带你去影院哦!你想要试试吗?”“当然啦,尽管出题吧……”,卡卡西信心满满,于是妈妈开始出题。
题目是这样的:现连续写下从整数1开始到某个整数N(十进制)之间的所有整数时,能得到如下的数字序列:12345678910111213141516171819202122…,当N为20时,得到的数字序列为:1234567891011121314151617181920。
请编写一个程序,计算这个序列中的数字字符的个数。小朋友们,你们能帮助卡卡西获得观看电影“魔境仙踪”的影券吗?
输入描述 Input Description
一行,一个正整数N(1≤N≤10000)。
输出描述 Output Description
一个正整数,表示由给定的整数所产生的序列的数字个数。
样例输入 Sample Input
15
样例输出 Sample Output
21
数据范围及提示 Data Size & Hint
当N=15时,得到的数字序列为:123456789101112131415,这个数字序列包含的数字字符个数为21个。
40%的数据1≤N≤100。
90%的数据1≤N≤1000。
100%的数据1≤N≤10000。