Cod sursa(job #1240493)

Utilizator JustGingaGinga Tudor-Adrian JustGinga Data 11 octombrie 2014 14:19:21
Problema Congr Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<fstream>
using namespace std;
ofstream out ("congr.out");
int p, poz, a[600000], b[600000], i, j;
long long s;
char x[8192];
void citire (int &nr)
{
	nr=0;
	while (x[poz]<'0' || x[poz]>'9')
		if (++poz==8192)
		{
			fread (x, 1, 8192, stdin);
			poz=0;
		}
	while ('0'<=x[poz] && x[poz]<='9')
	{
		nr=nr*10+x[poz]-'0';
		if (++poz==8192)
		{
			fread (x, 1, 8192, stdin);
			poz=0;
		}
	}
}
int main ()
{
	freopen ("congr.in", "r", stdin);
	citire (p);
	for (i=1; i<2*p; ++i)
	{
		citire (a[i]);
		if (i<=p) s=s+a[i];
		b[i]=i;
	}
	while (s%p)
	{
		i=1+rand()%p;
		j=1+p+rand()%(p-1);
		s=s+a[b[j]]-a[b[i]];
		swap (b[i], b[j]);
	}
	for (i=1; i<=p; i++)
		out<<b[i]<<" ";
	out.close();
	return 0;
}