Advertisement
wrench786

406 - Prime Cuts (Solved but this code has a problem))

Dec 27th, 2020 (edited)
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.64 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define wrench786 ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
  3. #define ll long long
  4. #define PI (acos(-1.0))
  5. #define LIMIT 1000000007
  6. using namespace std;
  7.  
  8. vector<int>dum(1009,0);
  9. vector<int>prime;
  10.  
  11. void sieve(){
  12.     int i,j;
  13.     dum[0]=1;
  14.     for(i=2;i*i<=1008;i++){
  15.         if(!dum[i]){
  16.             for(j=i*i;j<=1008;j+=i){
  17.                 dum[j]=1;
  18.             }
  19.         }
  20.     }
  21.     for(i=0;i<1009;i++){
  22.         if(!dum[i]){
  23.             prime.push_back(i);
  24.         }
  25.     }
  26. }
  27.  
  28. int main(){
  29.     wrench786
  30.  
  31. #ifndef ONLINE_JUDGE
  32.     clock_t tStart = clock();
  33.     freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout);
  34. #endif
  35.  
  36.     sieve();
  37.     int n,c;
  38.     while(cin>>n>>c){
  39.         vector<int>vec;
  40.         for(int i=0;prime[i]<=n;i++){
  41.             vec.push_back(prime[i]);
  42.         }
  43.         cout<<n<<" "<<c<<": ";
  44.         if(vec.size()&1){
  45.             if(vec.size()<2*c-1){
  46.                 for(int i=0;i<vec.size();i++){
  47.                     if(i==vec.size()-1){
  48.                         cout<<vec[i]<<"\n";
  49.                     }
  50.                     else{
  51.                         cout<<vec[i]<<" ";
  52.                     }
  53.                 }
  54.             }
  55.             else{
  56.                 int x = c-1;
  57.                 int size = vec.size()/2;
  58.                 int co=1;
  59.                 int limit = 2*c-1;
  60.                 for(int i=size - x;co<=limit;i++){
  61.                     if(co==limit){
  62.                         cout<<vec[i]<<"\n";
  63.                     }
  64.                     else{
  65.                         cout<<vec[i]<<" ";
  66.                     }
  67.                     co++;
  68.                 }
  69.             }
  70.         }
  71.         else{
  72.             if(vec.size()<2*c){
  73.                 for(int i=0;i<vec.size();i++){
  74.                     if(i==vec.size()-1){
  75.                         cout<<vec[i]<<"\n";
  76.                     }
  77.                     else{
  78.                         cout<<vec[i]<<" ";
  79.                     }
  80.                 }
  81.             }
  82.             else{
  83.                 int x = c-1;
  84.                 int size = (vec.size()-1)/2;
  85.                 int co=1;
  86.                 int limit = 2*c;
  87.                 for(int i = size-x;co<=limit;i++){
  88.                     if(co==limit){
  89.                         cout<<vec[i]<<"\n";
  90.                     }
  91.                     else{
  92.                         cout<<vec[i]<<" ";
  93.                     }
  94.                     co++;
  95.                 }
  96.             }
  97.         }
  98.         cout<<"\n";
  99.     }
  100.  
  101. #ifndef ONLINE_JUDGE
  102.     fprintf(stderr, "\n>> Runtime: %.10fs\n", (double) (clock() - tStart) / CLOCKS_PER_SEC);
  103. #endif
  104.  
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement