天天看點

【PAT乙級】1094 谷歌的招聘 (20 分)

【PAT乙級】1094 谷歌的招聘 (20 分)

題目位址

#include<cstdio>
#include<iostream>
#include<string>
using namespace std;
int n,k;
bool check(long long int sum)
{
	if(sum==1) return false;
    if(sum==0) return false;
	for(int i=2;i<=sum/i;i++)
	if(sum%i==0) return false;
	return true;
} 
int main(void)
{
	cin>>n>>k;
	string s; cin>>s;
	for(int i=0;i<=n-k;i++)
	{
		string temp=s.substr(i,k);
		long long int sum=0;
		for(int j=0;j<k;j++)
		{
			sum=sum*10+temp[j]-'0';
		}
		if(check(sum)) 
		{
			cout<<temp<<endl;
			return 0;
		}
	}
	cout<<"404"<<endl;
	return 0;
}
           
#include<cstdio>
#include<iostream>
#include<string>
using namespace std;
int n,k,flag;
string s;
bool check(string s)
{
	int sum=stoi(s);
	if(sum==1) return false;
	for(int i=2;i<=sum/i;i++) if(sum%i==0) return false;
	return true;
}
int main(void)
{
	cin>>n>>k;
	cin>>s;
	for(int i=0;i+k<=s.size();i++)
	{
		string temp=s.substr(i,k);
		if(check(temp))
        {
            flag=1,cout<<temp<<endl;
            break;
        }
	}
	if(!flag) cout<<"404"<<endl; 
}