#include<stdio.h>
#include<string.h>
#include<math.h>
using namespace std;
bool arr[5000];
long long int N=1005;
void sieve()
{
long long int i,j,k;
k=sqrt(N);
for(i=3;i<=k;i+=2)
{
if(arr[i]==0)
{
for(j=i*i;j<N;j+=i+i)
{
arr[j]=1;
}
}
}
for(i=4;i<N;i=i+2)
{
arr[i]=1;
}
}
int main()
{
sieve();
long long int i,j,k,a,b,c,cnt,arr1[1000];
while(scanf("%lld%lld",&a,&b)==2)
{
cnt=0;
k=1;
for(i=1;i<=a;i++)
{
if(arr[i]==0)
{
cnt++;
arr1[k++]=i;
}
}
if(cnt%2==0 && cnt>(2*b))
{
printf("%lld %lld: ",a,b);
c=2*b;
cnt=cnt-c;
cnt=cnt/2;
for(j=cnt+1;;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt+c)
{
printf(" ");
}
if(j==cnt+c)
{
break;
}
}
printf("\n\n");
}
else if(cnt%2==1 && cnt>(2*b))
{
printf("%lld %lld: ",a,b);
c=(2*b)-1;
cnt=cnt-c;
cnt=cnt/2;
for(j=cnt+1;;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt+c)
{
printf(" ");
}
if(j==cnt+c)
{
break;
}
}
printf("\n\n");
}
else if(cnt%2==1 && cnt<=(2*b))
{
printf("%lld %lld: ",a,b);
for(j=1;j<k;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt)
{
printf(" ");
}
}
printf("\n\n");
}
else if(cnt%2==0 && cnt<=(2*b))
{
printf("%lld %lld: ",a,b);
for(j=1;j<k;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt)
{
printf(" ");
}
}
printf("\n\n");
}
memset(arr1,0,sizeof(arr1));
}
return 0;
}
#include<string.h>
#include<math.h>
using namespace std;
bool arr[5000];
long long int N=1005;
void sieve()
{
long long int i,j,k;
k=sqrt(N);
for(i=3;i<=k;i+=2)
{
if(arr[i]==0)
{
for(j=i*i;j<N;j+=i+i)
{
arr[j]=1;
}
}
}
for(i=4;i<N;i=i+2)
{
arr[i]=1;
}
}
int main()
{
sieve();
long long int i,j,k,a,b,c,cnt,arr1[1000];
while(scanf("%lld%lld",&a,&b)==2)
{
cnt=0;
k=1;
for(i=1;i<=a;i++)
{
if(arr[i]==0)
{
cnt++;
arr1[k++]=i;
}
}
if(cnt%2==0 && cnt>(2*b))
{
printf("%lld %lld: ",a,b);
c=2*b;
cnt=cnt-c;
cnt=cnt/2;
for(j=cnt+1;;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt+c)
{
printf(" ");
}
if(j==cnt+c)
{
break;
}
}
printf("\n\n");
}
else if(cnt%2==1 && cnt>(2*b))
{
printf("%lld %lld: ",a,b);
c=(2*b)-1;
cnt=cnt-c;
cnt=cnt/2;
for(j=cnt+1;;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt+c)
{
printf(" ");
}
if(j==cnt+c)
{
break;
}
}
printf("\n\n");
}
else if(cnt%2==1 && cnt<=(2*b))
{
printf("%lld %lld: ",a,b);
for(j=1;j<k;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt)
{
printf(" ");
}
}
printf("\n\n");
}
else if(cnt%2==0 && cnt<=(2*b))
{
printf("%lld %lld: ",a,b);
for(j=1;j<k;j++)
{
printf("%lld",arr1[j]);
if(j!=cnt)
{
printf(" ");
}
}
printf("\n\n");
}
memset(arr1,0,sizeof(arr1));
}
return 0;
}
0 comments: (+add yours?)
Post a Comment