题目链接:C - Digit Counting
题意:水题 输入整数n 从1到n找出每个数拆分开的0~9的个数和 譬如:输入13 (12345678910111213) 输出 1 6 2 2 1 1 1 1 1 1
思路:循环 拆分 累加 输出
代码如下:
#include
int num[10];
void init()
{
int i;
for(i=0;i<10;i++)
num[i]=0;
}
void ad(int i)
{
int n;
while(i)
{
n=i%10;
num[n]++;
i/=10;
}
}
int main()
{
int n,x,i;
scanf("%d",&n);
while(n--)
{
init();
scanf("%d",&x);
for(i=1;i<=x;i++)
{
ad(i);
}
for(i=0;i<10;i++){
if(i) printf(" ");
printf("%d",num[i]);
}
printf("\n");
}
return 0;
}