Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<iostream>
- #include<bits/stdc++.h>
- using namespace std;
- #define M 1010
- bool mark[M];
- void myfunc(int n,int c)
- {
- vector<int>prime;
- int i,j,nprime=0;
- if(n==1)
- {
- printf("%d %d: 1\n",n,c);
- return;
- }
- else
- {
- mark[1]=false;
- mark[2]=false;
- prime.push_back(1);
- prime.push_back(2);
- for(i=3;i<=n;i+=2)
- {
- if(mark[i]==false)
- {
- prime.push_back(i);
- }
- for(j=i*i;j<=n;j+=2*i)
- {
- mark[j]=true;
- }
- }
- }
- if(n==c)
- {
- printf("%d %d: ",n,c);
- for(i=0;i<prime.size();i++)
- printf("%d ",prime[i]);
- cout<<endl;
- return ;
- }
- else if(prime.size()%2==0)
- {
- int count=0;
- printf("%d %d: ",n,c);
- for(i=(prime.size()/2-c)+1; ;i++)
- {
- printf("%d ",prime[i-1]);
- count++;
- if(count==2*c)
- {
- printf("\n");
- break;
- }
- }
- }
- else
- {
- int count=0;
- printf("%d %d: ",n,c);
- for(i=prime.size()/2-c+1; ;i++)
- {
- printf("%d ",prime[i]);
- count++;
- if(count==2*c-1)
- {
- cout<<endl;
- break;
- }
- }
- }
- }
- int main()
- {
- int n,c;
- while(scanf("%d %d",&n,&c) && n!=EOF)
- {
- myfunc(n,c);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment