No.6 使いものにならないハッシュ
問題文
ハッシュに興味を持ったFrankは、ハッシュアルゴリズムに、このようなアルゴリズムを考えた。
自然数の各桁を足した合計、それも二桁以上になる場合は、それを繰り返す。
つまり、
hash(4)=4,
hash(17)=hash(1+7)=hash(8)=8,
hash(119)=hash(1+1+9)=hash(11)=hash(2)=2のようになる。
しかし実際使ってみるとコリジョン(計算値がかぶってしまうこと)が多く、あまり使い物にならなかった。
それでも諦めきれないFrankに対して、あなたは「落ち着け、素数を数えるんだ」と言った。
やけになったFrankは、自然数
言った手前、申し訳なくなったあなたは、Frankの代わりに求めてあげることにした。
範囲
すべて異なる値になる最大の長さの素数列を求め、元の素数列の最初の素数を求めてください。
(複数同じ長さの素数列がある場合は、数が大きい方を選択する)
入力
出力
数値を文字列で出力してください。
最後に改行してください。
サンプル
サンプル1
入力
1 11
出力
3
まず
Frankのハッシュアルゴリズムを適用すると
ここでコリジョンが起こらない(値が重ならない)最大の長さの素数列を取り出すと
数が大きい方を選択するので素数列の最初は
サンプル2
入力
10 100
出力
31
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。