Cod sursa(job #152136)

Utilizator Clau2000GOREA CLAUDIU-CRISTIAN Clau2000 Data 9 martie 2008 02:36:10
Problema Xor Max Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.05 kb
var vxor:array[0..100000]of longint;
    a:array[1..100000,1..100000]of longint;
    n,i,j,max,start, stop,x:longint;
    f,g:text;

begin
     assign(f,'xormax.in');
     assign(g,'xormax.out');
     reset(f);
     rewrite(g);
     read(f,n);
     vxor[0]:=0;
 {(a xor b=c) <=> (a=b xor c) <=> (a xor c=b)}
     for i:=1 to n do
     begin
          read(f,x);
          vxor[i]:=vxor[i-1] xor x;
     end;
     max:=0;
     for i:=1 to n-2 do
      for j:=i+1 to n do
       begin
        a[i,j]:=vxor[i-1] xor vxor[j];
        if (a[i,j]=max) and (j<stop) then
        begin
            start:=i;
            stop:=j;
        end else
            if (a[i,j]=max) and (j-i<stop-start) then
            begin
               start:=i;
               stop:=j;
            end else
                if a[i,j]>max then
                begin
                  max:=a[i,j];
                  start:=i;
                  stop:=j;
                end;
     end;

     write(g,max,' ',start,' ',stop);

     close(f);
     close(g);
end.