Cod sursa(job #1716531)

Utilizator Athena99Anghel Anca Athena99 Data 12 iunie 2016 23:50:08
Problema Congr Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <cstdlib>
#include <ctime>
#include <fstream>
#include <vector>

using namespace std;

ifstream fin("congr.in");
ofstream fout("congr.out");

typedef long long i64;

const int pmax= 300000;

int v[pmax*2];

vector <int> x1, x2;

int main(  ) {
    int p;
    i64 sum= 0;
    fin>>p;
    for ( int i= 1; i<=p*2-1; ++i ) {
        fin>>v[i];
        if ( i<=p ) {
            sum= (i64)sum+v[i];
            x1.push_back(i);
        } else {
            x2.push_back(i);
        }
    }

    srand(time(NULL));
    while ( sum%p>0 ) {
        int x= rand()%p, y= rand()%(p-1);
        sum= (i64)sum-v[x1[x]]+v[x2[y]];
        int aux= x1[x];
        x1[x]= x2[y], x2[y]= aux;
    }

    for ( int i= 0; i<(int)x1.size(); ++i ) {
        fout<<x1[i]<<" ";
    }
    fout<<"\n";

    return 0;
}