Description
问
2
~
Input
两个整数
Output
如果
2
~
Sample Input
27 2
Sample Output
YES
Solution
简单题,先把所有这种特殊的数字处理出来,令
num[i]
为
2
~
Code
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<vector>
#include<queue>
#include<map>
#include<set>
#include<ctime>
using namespace std;
typedef long long ll;
typedef pair<int,int>P;
const int INF=0x3f3f3f3f,maxn=1005;
int prime[maxn],res,mark[maxn];
void get_prime(int n=1000)
{
res=0;
for(int i=2;i<=n;i++)
if(!mark[i])
{
prime[res++]=i;
for(int j=2*i;j<=n;j+=i)mark[j]=1;
}
}
int num[maxn];
int main()
{
get_prime();
for(int i=0;i<res-1;i++)
{
int temp=prime[i]+prime[i+1]+1;
if(temp<=1000&&mark[temp]==0)num[temp]++;
}
for(int i=1;i<=1000;i++)num[i]+=num[i-1];
int n,k;
while(~scanf("%d%d",&n,&k))
printf("%s\n",num[n]>=k?"YES":"NO");
return 0;
}