2004年7月に、Googleが採用のための(下図に示す)シリコンバレーのハイウェイ101沿いの巨大看板に掲示しました。内容は、最初の10桁の素数からなるURLは自然定数のの連続した数字で見つかった、超簡単です 電子。この素数を見つけることができる人は、このウェブサイトにアクセスし、Googleの採用プロセスの次のステップに行くことができます。
自然定数の Eは周知超越数(超越数)です。最初のいくつかの数字は、次のとおり 太字の10桁がGoogleの質問への答えですE = 2.718281828459045235360287471352662497757247093699959574966967627724076630353547594571382178525166427427466391932003059921 ...。
任意のL桁の番号の連続した数字の最初のK-桁の素数を見つける:今、あなたは、より一般的な問題を解決するように求められます。
入力仕様:
各入力ファイルには、1つのテストケースが含まれています。それぞれの場合は、最初の2行目の正の整数で与えられる:L(≤千)及びK(それぞれ、発見される所与の数と素数の桁数である<10)。次いで、L桁の数Nは、次の行に与えられています。
出力仕様:
各テストケースは、ラインの印刷Nの連続した数字で第K桁の素数そのような数は、出力は存在しない場合のための 404
代わり。注:先行ゼロはまた、K桁の一部としてカウントされなければなりません。例えば、200236の4桁の素数を見つけるために、0023溶液です。先行ゼロは、元の数ではないので、最初の数字2は、溶液0002として扱われてはなりません。
サンプル入力1:
20 5
23654987725541023819
サンプル出力1:
49877
サンプル入力2:
10 3
2468024680
出力例2:
404
テスト素数をスクリーニングますが、文字列与えられた条件の一つは、Lよりも大きくなり、これが事実であることを忘れないでください
書式#include <iostreamの> の#include < 文字列 > 使用して 名前空間はstdを、 BOOL isPrime(INT NUM){ ため(INT iが= 2、iは<= NUMを*; I ++ ) 場合(NUM%のI == 0)リターン 偽。 返す 真; } int型のmain(){ 文字列STR。 int型N、M。 CIN >> N >> M >> STR。 以下のために(INT iは= 0 ; I <= NM; I ++ ){ もし(isPrime(STOI(str.substr(I、M)))){ COUT << str.substr(I、M)。 システム(「一時停止」)。 リターン 0 ; } } COUT << " 404 " 。 システム(「一時停止」)。 リターン 0 ; }