Cod sursa(job #953505)

Utilizator raulstoinStoin Raul raulstoin Data 26 mai 2013 13:56:37
Problema Xor Max Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<fstream>
#define NMAX 100005
using namespace std;
int v[NMAX],DP[NMAX],n,p1,p2,sol=-1;
void read()
{
	ifstream fin("xormax.in");
	fin>>n;
	for(int i=1;i<=n;i++)
		fin>>v[i];
	fin.close();
}
int main()
{
	read();
	for(int i=1;i<=n;i++)
		DP[i]=DP[i-1]^v[i];
	for(int i=1;i<=n;i++)
		for(int j=1;j<=i;j++)
		{
			if(sol==(DP[i]^DP[j-1]))
				if(i-j<p2-p1 && i==p2)
					p1=j;
			if(sol<(DP[i]^DP[j-1]))
			{
				p1=j;
				p2=i;
				sol=DP[i]^DP[j-1];
			}
		}
	ofstream fout("xormax.out");
	fout<<sol<<' '<<p1<<' '<<p2<<'\n';
	fout.close();
	return 0;
}