UVa - 1225 - Digit Counting
题解:因为N的值很小,直接统计每个数的各位数记录在数组即可。
AC代码:
#include<cstdio>
using namespace std;
const int maxn = 10007;
int a[maxn][10];
int t,n;
int main()
{
scanf("%d",&t);
for(int i=1;i<=10000;i++)
{
int now = i;
for(int j=0;j<10;j++)a[i][j]=a[i-1][j];
while(now>0)
{
int k = now%10;
a[i][k]++;
now/=10;
}
}
while(t--)
{
scanf("%d",&n);
for(int i=0;i<9;i++)printf("%d ",a[n][i]);
printf("%d\n",a[n][9]);
}
return 0;
}