Pagini recente » Cod sursa (job #31227) | Cod sursa (job #303703) | Cod sursa (job #1553394) | Cod sursa (job #1950182) | Cod sursa (job #2623520)
#define MAX_N 100000
#include <fstream>
using namespace std;
ifstream fin("xormax.in");
ofstream fout("xormax.out");
int n, DP[MAX_N + 1];
int XorRange(int left, int right);
int main()
{
fin >> n;
for (int i = 1; i <= n; ++i)
{
fin >> DP[i];
DP[i] ^= DP[i - 1];
}
int MA = -1, I = -1, J = -1;
for (int j = 1; j <= n; ++j)
{
for (int i = j; i >= 1; --i)
{
int xorVal = XorRange(i, j);
if (xorVal > MA)
{
MA = xorVal;
I = i;
J = j;
}
}
}
fout << MA << ' ' << I << ' ' << J;
fin.close();
fout.close();
return 0;
}
int XorRange(int left, int right)
{
return DP[right] ^ DP[left - 1];
}