Pagini recente » Cod sursa (job #743724) | Cod sursa (job #2767069) | Cod sursa (job #1645834) | Cod sursa (job #1758188) | Cod sursa (job #3157236)
/*
ID: teparuf1
TASK: dualpal
LANG: C++
*/
#include <bits/stdc++.h>
#define MOD 1000000007
typedef long long int ll;
using namespace std;
ifstream fin("xormax.in");
ofstream fout("xormax.out");
int sp[100001];
int mn[100001];
int main()
{
int n;
fin >> n;
int mx=0;
mn[0]=0;
for(int i=1;i<=n;i++)
{
int x;
fin >> x;
sp[i]=sp[i-1]^x;
if(sp[mn[i-1]] < sp[i])
{
mn[i]=i;
}
else mn[i]=mn[i-1];
}
mx=sp[1];
int l=1,r=1;
for(int i=2;i<=n;i++)
{
if(sp[i]^sp[mn[i-1]] > mx)
{
l=mn[i-1]+1;
r=i;
mx=sp[i]^sp[mn[i-1]];
}
if(sp[i]>mx)
{
l=1;
r=i;
mx=sp[i];
}
}
fout << mx << " " << l << " " << r;
}