Cod sursa(job #801623)

Utilizator mihaipopa12Popa Mihai mihaipopa12 Data 24 octombrie 2012 19:02:03
Problema Congr Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<fstream>
#include<cstdlib>
#include<ctime>

#define maxp 300005
#define maxval 1000005

using namespace std;

ifstream f("congr.in");
ofstream g("congr.out");

int P,val[maxp<<1],ind[maxp<<1];

int main () {
	
	f >> P;
	
	for ( int i = 1 ; i < (P<<1) ; ++i ){
		f >> val[i];
		ind[i] = i;
	}
	
	long long sum = 0;
	for ( int i = 1 ; i <= P ; ++i ){
		sum += val[i];
	}
	
	srand(time(NULL));
	while ( sum % P ){
		int x = 1 + rand()%P;
		int y = P + 1 + rand()%(P-1);
		
		sum -= val[ind[x]];
		sum += val[ind[y]];
		ind[x] ^= ind[y] ^= ind[x] ^= ind[y];
	}
	
	for ( int i = 1 ; i <= P ; ++i ){
		g << ind[i] << " ";
	}
	g << "\n";
	
	f.close();
	g.close();
	
	return 0;
}