Advertisement
AlexAvram

probleme 18.01

Jan 18th, 2023
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.49 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <climits>
  4. using namespace std;
  5. ifstream f("date.in");
  6. ofstream g("date.out");
  7. int v[2023];
  8. int main()
  9. {
  10.     short C;
  11.     int n;
  12.     f>>C>>n;
  13.     int i, j;
  14.     for (i=1; i<=n; ++i)
  15.         f>>v[i];
  16.     if (C==1)
  17.     {
  18.         int minn=INT_MAX;
  19.         for (i=1; i<=n; ++i)
  20.             if (v[i]<minn)
  21.                 minn=v[i];
  22.         for (i=1; i<=n; ++i)
  23.             if (v[i]==minn)
  24.             {
  25.                 ++n;
  26.                 for (j=n-1; j>=i+1; --j)
  27.                     v[j+1]=v[j];
  28.                 v[i+1]=2*minn;
  29.                 ++i;
  30.             }
  31.         for (i=1; i<=n; ++i)
  32.             g<<v[i]<<" ";
  33.     }
  34.     else  if (C==2)
  35.     {
  36.         int minn, maxx, poz;
  37.         for (i=1; i<n; ++i)
  38.         {
  39.             minn=v[i], maxx=v[i], poz=i;
  40.             if (v[i]%2==0)
  41.             {
  42.                 for (j=i+1; j<=n; ++j)
  43.                     if (v[j]%2==0 && v[j]<minn)
  44.                         minn=v[j], poz=j;
  45.                 if (i!=poz)
  46.                     swap(v[i],v[poz]);
  47.             }
  48.             else
  49.             {
  50.                 for (j=i+1; j<=n; ++j)
  51.                     if (v[j]%2==1 && v[j]>maxx)
  52.                         maxx=v[j], poz=j;
  53.                 if (i!=poz)
  54.                     swap(v[i],v[poz]);
  55.             }
  56.         }
  57.         for (i=1; i<=n; ++i)
  58.             g<<v[i]<<" ";
  59.  
  60.     }
  61.     else if (C==3)
  62.     {
  63.         for (i=1; i<=n; ++i)
  64.         {
  65.             if (v[i]==-1)
  66.             {
  67.                 ++n;
  68.                 for (j=n-1; j>=i+1; --j)
  69.                     v[j+1]=v[j];
  70.                 v[i+1]=1;
  71.                 ++i;
  72.  
  73.                 ++n;
  74.                 for (j=n-1; j>=i+1; --j)
  75.                     v[j+1]=v[j];
  76.                 v[i+1]=2;
  77.                 ++i;
  78.  
  79.                 ++n;
  80.                 for (j=n-1; j>=i+1; --j)
  81.                     v[j+1]=v[j];
  82.                 v[i+1]=3;
  83.                 ++i;
  84.             }
  85.         }
  86.         for (i=1; i<=n; ++i)
  87.             g<<v[i]<<" ";
  88.     }
  89.     else if (C==4)
  90.     {
  91.         for (i=1; i<=n; ++i)
  92.         {
  93.             if (v[i]%2==0)
  94.             {
  95.                 ++n;
  96.                 for (j=n-1; j>=i; --j)
  97.                     v[j+1]=v[j];
  98.                 v[i]=-v[i];
  99.                 ++i;
  100.             }
  101.         }
  102.         for (i=1; i<=n; ++i)
  103.             g<<v[i]<<" ";
  104.     }
  105.     else if (C==5)
  106.     {
  107.         int x;
  108.         for (i=1; i<=n; ++i)
  109.         {
  110.             if (v[i]%2==1)
  111.             {
  112.                 x=v[i]%9;
  113.                 if (x==0)
  114.                     x=9;
  115.  
  116.                 ++n;
  117.                 for (j=n-1; j>=i; --j)
  118.                     v[j+1]=v[j];
  119.                 v[i]=x, ++i;
  120.  
  121.                 ++n;
  122.                 for (j=n; j>=i+1; --j)
  123.                     v[j+1]=v[j];
  124.                 v[i+1]=x, ++i;
  125.             }
  126.         }
  127.         for (i=1; i<=n; ++i)
  128.             g<<v[i]<<" ";
  129.     }
  130.     else if (C==6)
  131.     {
  132.         int x=n;
  133.         for (i=1; i<=n/2; ++i)
  134.             swap(v[i],v[x]), --x;
  135.         for (i=1; i<=n; ++i)
  136.             g<<v[i]<<" ";
  137.     }
  138.     else if (C==7)
  139.     {
  140.         int x=0, cn=n;
  141.         for (i=1; i<=n; ++i)
  142.         {
  143.             if (v[i]==-3)
  144.             {
  145.                 ++x;
  146.                 for (j=i; j<=n-1; ++j)
  147.                     v[j]=v[j+1];
  148.             --n, --i;
  149.             }
  150.         }
  151.         for (i=x+1; i<=cn; ++i)
  152.             v[i]=-3;
  153.         for (i=1; i<=cn; ++i)
  154.             g<<v[i]<<" ";
  155.     }
  156.  
  157.     return 0;
  158. }
  159.  
  160. +
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement