Cod sursa(job #1149687)

Utilizator grosuGrosu Alex grosu Data 22 martie 2014 10:29:24
Problema Congr Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <fstream>
#include <string.h>
#include <stdlib.h>
#include <time.h>

using namespace std;

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

int sos[6000];
int folosit[6000], nefolosit[6000];
int p, n;
long long s = 0;
int a, b;

int main(){
    srand(time(0));

    fin>>p;

    while(fin>>a){
        sos[n] = a;
        n++;
    }

    for(int i=1; i<=p; i++) {
        folosit[++folosit[0]] = i;
        s += sos[i];
    }

    for(int i=p+1; i<2*p; i++)
        nefolosit[++nefolosit[0]] = i;

    while(s%p){
        a = rand() % folosit[0] + 1;
        b = rand() % nefolosit[0] + 1;

        s = s - sos[folosit[a]] + sos[nefolosit[b]];

        int aux = folosit[a];
        folosit[a] = nefolosit[b];
        nefolosit[b] = aux;
    }

    for(int i=1; i<=folosit[0]; i++)
        fout<<folosit[i]<<" ";
    fout<<"\n";

    return 0;
}