Cod sursa(job #1716528)

Utilizator Athena99Anghel Anca Athena99 Data 12 iunie 2016 23:47:34
Problema Congr Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <cstdlib>
#include <fstream>
#include <vector>

using namespace std;

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

const int pmax= 300000;

int v[pmax*2];

vector <int> x1, x2;

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

    while ( sum>0 ) {
        int x= rand()%p, y= rand()%(p-1);
        sum= (sum-v[x1[x]]%p+v[x2[y]]%p+p)%p;
        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;
}