Cod sursa(job #796460)

Utilizator visanrVisan Radu visanr Data 11 octombrie 2012 16:38:51
Problema Congr Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <cstdio>
#include <cstdlib>
#include <ctime>
using namespace std;


#define nmax 600010

int V[nmax], Pos[nmax], P, i;
long long S;

int main()
{
    freopen("congr.in", "r", stdin);
    freopen("congr.out", "w", stdout);
    srand(time(0));
    scanf("%i", &P);
    for(i = 1; i < 2 * P; i++)
        scanf("%i", &V[i]), Pos[i] = i;
    for(i = 1; i <= P; i++) S += V[i];
    while(S % P != 0)
    {
        int A = (rand() % P) + 1;
        int B = (rand() % (P - 1)) + P + 1;
        S += V[Pos[B]];
        S -= V[Pos[A]];
        Pos[A] ^= Pos[B] ^= Pos[A] ^= Pos[B];
    }
    for(i = 1; i <= P; i++) printf("%i ", Pos[i]);
    return 0;
}