(ACM/ICPC 2008年日本国内予選問題B 改題)
で割った余りが である正整数は7⁢ℕ+1数と呼ばれる。しかし,発音しにくいので,月曜数と呼ぼう。
月曜数 , に対して、月曜数 が存在して が成り立つとき、 を の月曜約数と呼ぶ。月曜数 が月曜数 の月曜約数であるためには、 が の普通の意味の約数であれば必要十分であると、簡単に証明できる。
より大きな月曜数でそれ自身と の他に月曜約数をもたないものを、月曜素数と呼ぶ。普通の意味の素数である月曜数は月曜素数であるが、逆は一般に成り立たない。たとえば, は普通の意味の素数ではないが、月曜素数である。
月曜数 の月曜約数である月曜素数を、 の月曜素因数と呼ぶ。たとえば、 は月曜素数であり、 が成り立つので、 は の月曜素因数のひとつである.
より大きなどんな月曜数も、1個以上の月曜素数の積として表すことができる。表し方は、順序の違いを無視しても、必ずしも一通りではない。たとえば、 である。
から までの月曜数について月曜素因数の一覧表を出力するプログラムを書け。
出力は、小さい月曜数から順に行うものとする。まず、月曜数を表示し,つづけて同じ行にコロン「:」、そして、月曜素因数の並びを、それぞれの前に空白を置いて、小さい順に重複なく表示する。該当の月曜数を複数回割る月曜素因数も1回だけ出力する。
出力する表のうち、たとえば、 に対応する行は、次のようになる。
10648: 8 22 1331