数当てクイズ

[結] 2005年11月 - 結城浩の日記 で新しい問題が出題されていたので考えてみました。
答えはネタバレになるのでたたんでおきます。

問題A

0, 1, 10, 2, 100, 11, 1000, 3, 20, 101, 10000, 12, 100000, 1001, 次の数は?

答えは 110です。
これはなんの数列だろうと考えたのですが、なかなか分からず・・・。色々と考えていたら、0,1,2,3と言う数列が1番目、2番目、4番目、8番目、とあるじゃないですか!なるほど*1!とそうなれば、*2それぞれの数字を1〜14に対応する表を書くと下のようになります。

1 2 3 4 5 6 7 8 9 10 11 12 13 14
0 1 10 2 100 11 1000 3 20 101 10000 12 100000 1001

さて他の部分をと見ると、1,10,100,1000,10000,100000がそれぞれ2,3,5,7,11,13に対応しているので、素数に対応しているのだと判明。つまり、各桁数が対応する数値を素因数分解した時の乗数になっていると言うことでした。
よって、15=3×5なので 110になります。

問題B

1, 11, 2, 12, 111, 21, 3, 13, 121, 1111, 112, 22, 211, 31, 4, 14, 131, 次の数は?

答えは 1211だと思いますがちょっと自信なし。
こちらの数列は1,2,3,4の間隔が2の累乗に同じだったので、それを元に類推しました。ある程度パターンに沿って数字が並んでいるようですが、完全にはルールが分かりませんでした。
予想としては、以下5まではこんな感じに続くのではないでしょうか?

4 14 131 1211 11111 1121 113 23 221 1112 122 32 212 2111 311 41 5

*1:つまり2のn乗になっていると

*2:最初の数字を1として