1094 Googleの求人(20点)C++版4 msはすべてのテストポイントを通過


私の文章が好きで、いいね+コレクション+関心のを覚えていて、あなたのフィードバックは私の絶えず更新する動力です!QQ/Wechat:235 40008
元タイトルリンク:1094グーグルの求人(20点)
問題を解く構想:1.kビット文字を先頭から切り取る.kビット文字に対応する整数が素数であれば、その素数を出力してプログラムを終了する.3.終端まで素数がない場合、出力404.
より多くの注釈はコードに書かれています.コードは次のとおりです.
/*
    Copyright:Xinyuan wang
    Date: 2020/7/8 22:28:10
    Description:1094       (20 )
*/
#include  //     
using namespace std;
bool is_prime(int n){
               //           
	if(n == 2 || n == 3) return 1;
	if(n % 6 != 1 && n%6 != 5) return 0;
	for(int i = 5; i < sqrt(n); i += 6)
		if(n % i == 0 || n % (i +2) == 0) return 0;
	return 1;
}

int main(int argc, char** argv)
{
     
	ios::sync_with_stdio(false);
	cin.tie(0);   // 2     :  cin、cout       ,    !
	int l,k;
	cin >> l >> k;
	string s;
	cin >> s;
	for(int i = 0; i <= l - k; i++){
     
        string st = s.substr(i,k);
		int m = stoi(st);
		if(is_prime(m)){
     
			cout << st;   //         , 200236  4   ,0023    ,     2,      m       2 0
			return 0;  //      
		}
	}
	cout << "404";
    return 0;
}

私の文章が好きで、いいね+コレクション+関心のを覚えていて、あなたのフィードバックは私の絶えず更新する動力です!QQ/Wechat:235 40008