Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2017
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.26 KB | None | 0 0
  1. #include<iostream>
  2. #include<fstream>
  3. using namespace std;
  4. ifstream f("volei1.in");
  5. ofstream g("volei1.out");
  6. int v[4002],w[2001],n,m,i,j,mn,x,ok,p,q,nr;
  7. int main()
  8. {
  9.     f>>n;
  10.     n*=2;
  11.     for(i=1;i<=n;i+=2)
  12.         f>>v[i];
  13.     n++;
  14.     v[n]=v[1];
  15.     f>>m;
  16.     for(i=1;i<=m;i++)
  17.         f>>w[i];
  18.     ok=true;
  19.     while(ok)
  20.     {
  21.         i=2;
  22.         while(v[i]!=0 && i<n)
  23.         {
  24.             i+=2;
  25.         }
  26.         x=max(v[i-1],v[i+1]);
  27.         p=i;
  28.         j=i+2;
  29.         for(i=j;i<=n;i+=2)
  30.         if(v[i]==0)
  31.         {
  32.            if(max(v[i-1],v[i+1])<x)
  33.                 {
  34.                     x=max(v[i-1],v[i+1]);
  35.                     p=i;
  36.                 }
  37.         }
  38.         i=1;
  39.         while((w[i]==0 || w[i]<=x) && i<=m)
  40.             i++;
  41.         mn=w[i];
  42.         q=i;
  43.         if(i==m+1)
  44.             break;
  45.         for(i=q;i<=m;i++)
  46.         {
  47.             if(w[i]>x)
  48.                 if(w[i]<mn)
  49.                 {
  50.                     q=i;
  51.                     mn=w[i];
  52.                 }
  53.         }
  54.         if(mn<=x)
  55.             break;
  56.         v[p]=-mn;
  57.         w[q]=0;
  58.         nr++;
  59.     }
  60.     g<<nr<<'\n';
  61.     for(i=1;i<n;i++)
  62.         if(v[i]!=0)
  63.         g<<v[i]<<' ';
  64.     f.close();
  65.     g.close();
  66.     return 0;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement