#include<iostream> #include<stdio.h> #include<stdlib.h> #include<math.h> #include<string> #include<algorithm> #include<map> #include<vector> #include<queue> using namespace std; //在常数e中枚举连续长度为20的素数 //key:stoi字符串转数字 substr()截取字符子串 bool isPrime(int n){ //判断n是否为素数 if(n<=1) return false; int sqr=(int)sqrt(1.0*n); //sqrt的作用是位一个浮点数开根号 for(int i=2;i<=sqr;i++){ //遍历2到根号n if(n % i == 0) return false; } return true; //n是素数 } int main(){ int l,k; string s; cin >> l >> k >> s; //字符串长度 子串长度 字符串 for(int i=0;i<=l-k;i++){ string t=s.substr(i,k); int num=stoi(t); //此处用stod也可以 if(isPrime(num)){ cout << t; return 0; } } cout << "404\n"; system("pause"); return 0; }