Informatică, întrebare adresată de fmitrana, 9 ani în urmă

Să se ordoneze crescător elementele situate pe poziții pare în vector și descrescător elementele situate pe poziții impare.Problema 164 pbinfo. Va rog in c++ si la nivel de clasa a 9-a fara olimpiada

Răspunsuri la întrebare

Răspuns de express
5
#include <bits/stdc++.h>
using namespace std;
int v1[105], v2[105], n, i, k1, k2, x, aux;
bool ok;
int main()
{
    ifstream f("halfsort2.in");
    ofstream g("halfsort2.out");
    f >> n;
    for(i = 1; i <= n; i ++)
     {
        f >> x;
        if(i % 2 == 1) v1[++ k1] = x;
                  else v2[++ k2] = x;

     }
     do
     {
         ok = true;
         for(i = 1; i < k1; i ++)
          if(v1[i] < v1[i + 1])
          {
              aux = v1[i];
              v1[i] = v1[i + 1];
              v1[i + 1] = aux;
              ok = false;
          }
     } while(!ok);

     do
     {
         ok = true;
         for(i = 1; i < k2; i ++)
          if(v2[i] > v2[i + 1])
          {
              aux = v2[i];
              v2[i] = v2[i + 1];
              v2[i + 1] = aux;
              ok = false;
          }
     } while(!ok);
    for(i = 1; i <= k1; i ++)
     g << v1[i] << " " << v2[i] << " ";

    return 0;
}

Alte întrebări interesante