えびちゃんは、ある非負整数 D を「カニサル暗号」で暗号化して得られた文字列 C を与えられました。この暗号は、非負整数を 10 進法で表したときの各数字をある(元と異なるとは限らない)決められた数字で置き換えるものです。異なる数字が同じ数字に置き換えられたり、同じ数字が出現位置によって異なる数字に書き換えられることはありません。
たとえば、この暗号化方式によって 2646 が 0545 になることはありますが、3456 が 1333 になったり 1333 が 3456 になることはありません。
いま、えびちゃんは D を 10^9+7 で割った余りが M になることを教えてもらいました。このとき、D として考えられるものを一つ出力してください。複数考えられる場合はどれを出力しても構いません。ただし、D の先頭には余分な 0
はついていないものとします。
M C
D として考えられる非負整数を一行に出力してください。存在しない場合は -1
を出力してください。
2 1000000007
1000000009
今回の暗号化方式は、0 を 0 に、1 を 1 に、9 を 7 に置き換えるものでした。
3 1000000007
-1
1 01
-1
D の先頭に余分な 0
がついていることはありません。
45 1000000023
6000000087
1000000052
や 2000000059
なども条件を満たすので、それを出力してもかまいません。
0 940578326285963740
123456789864197523