給出一個L長度的字符串,求出其中第一個K位的素數。ios
使用字符串s接受輸入的字符串,並枚舉每一個k位的子串(起始位置從0到L-K),而後再轉換成整數,判斷是不是素數,若是是就直接輸出並退出程序。若是不存在就輸出404.算法
#include<cstdio> #include<string> #include<iostream> #include<cmath> using namespace std; bool isPrime(int num){ if(num<=1){ return false; } int sqrtn = (int)sqrt(num*1.0); for (int i = 2; i <= sqrtn; ++i) { if(num%i==0){ return false; } } return true; } int main(){ int L,K; scanf("%d %d",&L,&K); string s; cin>>s; int len = L-K; for(int i=0;i<=len;++i){ string r = s.substr(i,K); int num = stoi(r); if(isPrime(num)){ cout<<r; return 0; } } printf("404"); return 0; }