PAT高度1152グーグルの募集(20分)

2004年7月に、Googleが採用のための(下図に示す)シリコンバレーのハイウェイ101沿いの巨大看板に掲示しました。内容は、最初の10桁の素数からなるURLは自然定数のの連続した数字で見つかった、超簡単です  電子。この素数を見つけることができる人は、このウェブサイトにアクセスし、Googleの採用プロセスの次のステップに行くことができます。

prime.jpg

自然定数の  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 ; 
}

おすすめ

転載: www.cnblogs.com/littlepage/p/12216200.html