Cod sursa(job #2443937)

Utilizator vladutflaviusPasare Vladut vladutflavius Data 29 iulie 2019 19:54:35
Problema Divizori Primi Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream cin("permuta.in");
    ofstream cout("permuta.out");
    int n,i;
    cin>>n;
    int b[n+1],c[n/2+2],q=-1,t=0,x;
    for (i=1; i<=n; i++)
       {cin>>x; if ((i<=n/2 && n%2==0) || (i<=n/2+1 && n%2==1)) {q=q+2; b[q]=x;}
       else {t++; c[t]=x;}}
    if (t%2==1)
        for (i=2; i<t; i=i+2)
        for (int j=i; j<t; j++)
        swap (c[j],c[j+1]);
    else for (i=1; i<t; i=i+2)
        for (int j=i; j<t; j++)
        swap (c[j],c[j+1]);
    q=0;
    for (i=2; i<=n; i+=2)
    {q++; b[i]=c[q];}

    for (i=1; i<=n; i++) cout<<b[i]<<" ";
    return 0;
}