004 - nmマス計算
時間制限 8 秒 / メモリ制限 256 MB / 得点 20 / x 27 /
問題
あなたは小学校の情報の先生である.職員室で担任の先生と話をしていると,今年の夏休みの宿題として 100 マス計算を拡張した nm マス計算が出されたと聞いた.
宿題は児童が他の児童の回答を写して提出するのを防ぐため,また各児童の習熟度に合わせて課題の難易度調整を行うために,各児童には異なる計算課題が出題された.具体的には以下の通りである.
- 計算結果の記入部が n 行 m 列ある方眼用紙が配られる.
- 更に長さ n の整数列 a, 長さ m の整数列 b も配られる.これは nm マス計算の縦部と横部に対応する.
- 計算結果のマスは左上が (1,1) ,左下が (n,1),右下が (n,m) となっている.
- 児童はマス (i, j) に対して ai × bj の結果を 10 進法表記で書き込む.このとき,先頭に不必要な 0 をつけることはない.
例えば縦部 a = {10, 2, 5}, 横部 b = {1, 1, 6} として出題された児童は,図 A-1 の様にマスに記入することになる.
さて夏休みの宿題を出したは良いものの,評価のためには児童が正しく課題をこなしたか確認する必要がある.しかし先生の仕事は忙しいので,沢山いる児童の nm マス計算の結果を検算するのは大変である.そこで児童には,計算結果の記入部に記入した数字 0-9 の個数を別に提出してもらうことにして,この個数が合っているかで評価することにした. 図 A-1 を例にすると,0 は 4 個,1 は 3 個,2 は 3 個,3 は 1 個,5 は 2 個,6 は 1 個,他は 0 個である.
しかしこの個数を求めるのも一苦労である.万が一この想定解を間違えて児童に誤った評価を下そうものなら児童の人生を左右してしまうし,先生も PTA からのお叱りを受けてしまう. そこで担任の先生は,優秀な情報の先生であるあなたに,正解解答を作成してもらうことにした.あなたは解答を求めるプログラムを書くことにした.
Input
入力は次の形式の最大 100 個のデータセットからなる.各データセットは次の形式で表される.
n m a1 a2 ... an b1 b2 ... bm
データセットの最初の行は,二つの整数 n と m からなる.n は縦の行数,m は横の列数である.この値は 1 ≤ n, m ≤ 100 を満たす. 2 行目は整数列 a の値が n 個ある.ai (1 ≤ i ≤ n) は i 行目の値を表す. 3 行目は整数列 b の値が m 個ある.bj (1 ≤ j ≤ m) は j 列目の値を表す. これらの値は 1 ≤ ai, bj ≤ 1,000 を満たす.
入力の終わりはゼロふたつからなる行で表される.
Output
各データセットについて,与えられた nm マス計算に書き込まれる数字 0–9 の個数 c0 c1 ... c9 を 1 行に空白区切りで出力せよ.
Sample Input
2 4 2 1 1 4 2 3 3 3 10 2 5 1 1 6 10 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 8 6 3 1 4 1 5 9 2 6 2 7 1 8 2 8 8 15 3 10 5 16 8 4 2 1 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 0 0
Output for the Sample Input
0 1 2 1 2 0 1 0 1 0 4 3 3 1 0 2 1 0 0 0 28 24 27 15 23 15 17 8 15 6 4 12 16 5 11 2 6 4 11 1 59 42 41 20 28 18 29 7 23 1