チュンは、彼の数学の宿題に飽きています。彼はチョークの部分を取り、1から始まる連続した整数のシーケンスの書き込みを開始するN(1 < N <10000)。その後、彼は各桁(0〜9)の順に表示された回数をカウントします。例えば、とN = 13、配列は以下のとおりであります:
12345678910111213
この配列では、0が一度表示され、1 2 3 3回表示され、4から9までの各桁が一度表示され、2回出現し、6回現れます。しばらくプレイした後、チュンは再び退屈されます。彼は今、彼のためにこれを行うためのプログラムを書きたいです。あなたの仕事は、このプログラムを書くことで彼を助けることです。
入力
入力ファイルには、複数のデータセットから構成されています。入力ファイルの最初の行は、正の整数であり、以下の行は、データセットを記述20よりも大きくないデータセットの数を含んでいます。
各テストケースのために、番号を含む一つの行が存在するNは。
出力
各テストケースのために、一列に順次スペースで区切られた数字0、1、... 9の数を書き込みます。
サンプル入力
2 3 13
サンプル出力
0 0 0 0 1 1 1 0 0 0 1 6 2 2 1 1 1 1 1 1 解答:の#include <iostreamの> する#include <CStringの> する#include <cstdioを> 使用して名前空間std。メインINT(){ S、N INT、ANS [10]。 scanf関数( "%のD"、&N); 以下のために(INT i = 1; iが<= N; iは++) { memsetの(ANS、0、はsizeof(ANS))。 scanf関数( "%のD"、&S)。 (; K <=のS K ++のint、K = 1)のために { int型、X = K。 一方、(X) { ANS [Xの10%] ++; X = X / 10。 } } のための(INT J = 0であり、j <= 9; J ++)のprintf( "%dの"、ANS [J])。 printf( "\ n")を。 } 0を返します。}