Pagini recente » Cod sursa (job #150121) | Cod sursa (job #450431) | Cod sursa (job #1420652) | Cod sursa (job #2369037) | Cod sursa (job #2768125)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("xormax.in");
ofstream fout ("xormax.out");
int main()
{
int n; int v[100005];
int maximul=0,initialul=0,finalul=0;
fin >> n;
for (int i=1; i<=n; i++)
fin >> v[i];
for (int i=1; i<n; i++)
{
int partial = v[i],initialp=i;
if (partial>=maximul)
{
maximul = partial;
initialul = initialp;
finalul = i;
}
for (int j=i+1; j<=n; j++)
{
partial = partial^v[j];
if (partial>maximul || (partial==maximul && j<finalul) || (partial==maximul && j==finalul && j-initialp<finalul-initialul))
{
maximul = partial;
initialul = initialp;
finalul = j;
}
}
}
fout << maximul << " " << initialul << " " << finalul;
return 0;
}