Cod sursa(job #1309209)

Utilizator radu_cebotariRadu Cebotari radu_cebotari Data 5 ianuarie 2015 16:00:43
Problema Congr Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<fstream>
#include<cstdlib>
#include<time.h>
using namespace std;
ifstream in("congr.in");
ofstream out("congr.out");
const int NMAX = 300000;

int sum,n,v[2*NMAX+10],poz[2*NMAX+10];

void read()
{

    in>>n;
    for(int i = 1 ; i < 2*n ; i++){
        in>>v[i];
        poz[i] = i;
        if(i <= n)
            sum += v[i];
    }
    in.close();
}

void solve()
{

    srand(time(NULL));
    int i,j;
    while(sum % n){
        i = 1 + (rand()%n);
        j = n + 1 + (rand()%n);
        sum = sum - v[i] + v[j];
        swap(v[i],v[j]);
        swap(poz[i],poz[j]);
    }

}

void afis()
{

    for(int i = 1;  i <= n ; i++)
        out<<poz[i]<<" ";
    out.close();
}

int main()
{

    read();
    solve();
    afis();
    return 0;
}