習題3-3 數數字(Digit counting)
阿新 • • 發佈:2019-01-24
#include <iostream> #include <stdio.h> #include <string.h> #define maxn 1000000 using namespace std; int main() { int a[10010]; int b[10]; int i,t,n,j,k; while(scanf("%d",&t)!=EOF) { for(j=1; j<=t; j++) { scanf("%d",&n); memset(b,0,sizeof(b)); for(i=0;i<n;i++) { a[i]=i+1; while(a[i]/10!=0) { k=a[i]%10; b[k]++; a[i]/=10; } b[a[i]]++; } for(i=0; i<9; i++) printf("%d ",b[i]); printf("%d\n",b[9]); } } return 0; }
/*雖說是順序寫在一起 但在程式執行是將數字分開 用迴圈分離出 每一位數 之後通過陣列計數*/