1152 Google Recruitment (20 分)

这道题大意就是给了一个L位的数字,要求其第一个连续的K位质数。水题,关键要看懂英文描述K-digit prime----k位质数

 1 #include<iostream>
 2 #include<string>
 3 using namespace std;
 4 bool is(string p)   //判断是不是质数
 5 {
 6 
 7     int k = stoi(p);
 8     if (k == 1)return false;
 9     if (k == 2)return true;
10     if (k == 3)return true;
11     //cout <<"p等于:"<< p<<endl;
12     for (int i = 2; i*i <= k; i++)
13     {
14         if (k%i == 0){ return false; }
15     }
16     return true;
17 
18 }
19 int main()
20 {
21     int l=0,k=0;
22     string s;
23     cin >> l >> k;
24     cin >> s;
25     bool find1 = false;
26     for (int i = 0; i + k <=s.length(); i++)
27     {
28         string p(s,i,k);
29         //cout << p<<endl;
30         if (is(p)){ cout << p; find1 = true; break; }
31     }
32     if (find1 == false)cout << "404";
33     return 0;
34 }

 

posted @ 2018-12-10 18:04  代码拯救世界可以吗  阅读(593)  评论(0编辑  收藏  举报