Pagini recente » Cod sursa (job #1295530) | Cod sursa (job #2483551) | Cod sursa (job #897388) | Cod sursa (job #2535884) | Cod sursa (job #1287571)
#include<fstream>
#include<vector>
using namespace std;
ifstream in("xormax.in");
ofstream out("xormax.out");
int main()
{
size_t n,i,j,max,start,stop;
vector<size_t> v;
in>>n;
v.resize(n);
for(i=0;i<n;i++) in>>v.at(i);
max=v.at(0);
start=1;
stop=1;
for(i=0;i<n-1;i++)
{
v.at(i+1)^=v.at(i);
if(v.at(i+1)>max)
{
max=v.at(i+1);
start=1;
stop=i+2;
}
}
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if((v.at(i)^v.at(j))>max)
{
max=(v.at(i)^v.at(j));
start=i+2;stop=j+1;
}
else if((v.at(i)^v.at(j))==max&&stop-start>j-i-1)
{
max=(v.at(i)^v.at(j));
start=i+2;stop=j+1;
}
out<<max<<" "<<start<<" "<<stop;
}