B - おとぎの国の高橋君
Editorial
/
高橋君の住むAtCoder国では、私達が普段使用する数字と同様に 10 個のアラビア数字 (0-9) の 10 進数が使われています。
しかし、私達が普段使用する数字は大小関係が 0<1<2<3<4<5<6<7<8<9 の順になっているのに対して、 AtCoder国の数字ではその大小関係が異なっています。
例えば、AtCoder国の数字では 0<9<8<7<6<5<4<3<2<1 の順になっている場合、AtCoder国では 9 よりも 8 の方が大きいことになります。また、97 よりも 72 の方が大きいことになります。
AtCoder国の数字の大小関係といくつかの数が与えられるので、AtCoder国の数字の大小関係で昇順に並び替えてください。
なお、私達が普段使用する数字同様、AtCoder国で最も小さい数字は 0 であることは決まっています。
入力は以下の形式で標準入力から与えられる。
与えられた数をAtCoder国の数字の大小関係にあわせて昇順に並び替え、標準出力に 1 行に 1 つの数字ずつ出力せよ。
なお、最後には改行を出力せよ。
Time Limit: 2 sec / Memory Limit: 64 MB
問題文
しかし、私達が普段使用する数字は大小関係が 0<1<2<3<4<5<6<7<8<9 の順になっているのに対して、 AtCoder国の数字ではその大小関係が異なっています。
例えば、AtCoder国の数字では 0<9<8<7<6<5<4<3<2<1 の順になっている場合、AtCoder国では 9 よりも 8 の方が大きいことになります。また、97 よりも 72 の方が大きいことになります。
AtCoder国の数字の大小関係といくつかの数が与えられるので、AtCoder国の数字の大小関係で昇順に並び替えてください。
なお、私達が普段使用する数字同様、AtCoder国で最も小さい数字は 0 であることは決まっています。
入力
b_0 b_1 ‥‥ b_9 N a_0 a_1 : : a_{N-1}
- 入力は N+2 行ある。
- 1 行目には、AtCoder国での 1 桁の数字の大小関係が与えられる。
- AtCoder国では b_0 < b_1 < ... < b_9 であることを表している。
- b_0 は必ず 0 である。
- 重複する数字は存在せず、0 から 9 までの数字が 1 度ずつ現れる。
- 2 行目には並び替える数の個数を表す整数 N(1≦N≦777) が与えられる。
- 3 行目からの N 行には、j+3 行目に並び替える数を表す整数 a_j(1≦a_j≦777,777,777) が与えられる。
出力
なお、最後には改行を出力せよ。
入力例 1
0 8 1 3 5 4 9 7 6 2 10 1 2 3 4 5 6 7 8 9 10
出力例 1
8 1 3 5 4 9 7 6 2 10
- AtCoder国ではこの大小関係の場合、0, 8, 1, 3, 5, 4, 9, 7, 6, 2, 80, 88, 81, 83, ..., 86, 82, 10, 18, 11, ... の順に大きくなるので、答えは上記の順になります。
入力例 2
0 9 8 7 6 5 4 3 2 1 3 13467932 98738462 74392
出力例 2
74392 98738462 13467932
- 5 桁の数は 8 桁の数よりも小さいので、1 番は 74392 になります。
- 98738462 と 13467932 では最上位の 9 は1 より小さいので、98738462 が 2 番目、13467932 が 3 番目になります。
入力例 3
0 1 2 3 4 5 6 7 8 9 4 643 1234 43 909
出力例 3
43 643 909 1234
- 私達の普段使用する数と同じ大小関係に昇順に並べます。
入力例 4
0 7 4 3 9 5 6 2 1 8 2 333 333
出力例 4
333 333
入力例 5
0 2 4 6 8 1 3 5 7 9 1 10
出力例 5
10