wty1104吧 关注:39贴子:1,050
  • 2回复贴,共1
uses math;
var
f:array[0..200001,0..20] of longint;
i,j,n,k,t:longint;
sum:int64;
function max(a,b:longint):longint;
begin
if a>b then exit(a) else exit(b);
end;
function min(a,b:longint):longint;
begin
if a<b then exit(a) else exit(b);
end;
procedure init;
begin
assign(input,'rmq.in');
assign(output,'rmq.out');
reset(input);
rewrite(output);
end;
procedure endl;
begin
close(input);close(output);
end;
begin
//init;
readln(n,k);
for i:=1 to n do read(f[i,0]);
f[n+1,0]:=f[n,0];f[0,0]:=f[1,0];
k:=trunc(ln(k)/ln(2));
for j:=1 to k do
for i:=n downto 1 do
f[i,j]:=max(f[i,j-1],f[i+2**(j-1)+1,j-1]);
for i:=1 to n do //writeln(f[i,k]);
inc(sum,f[i,k]);
writeln(sum);
sum:=0;
for j:=1 to k do
for i:=1 to n do
f[i,j]:=min(f[i,j-1],f[i+2**(j-1)-1,j-1]);
for i:=1 to n do inc(sum,f[i,k]);
writeln(sum);readln;readln;readln;readln;
//endl;
end.


IP属地:美国1楼2011-11-11 09:54回复
    var
    f:array[0..200001,0..20] of longint;
    i,j,n,k,t:longint;
    sum:int64;
    function max(a,b:longint):longint;
    begin
    if a>b then exit(a) else exit(b);
    end;
    function min(a,b:longint):longint;
    begin
    if a<b then exit(a) else exit(b);
    end;
    function fact(p:longint):longint;
    var i:longint;
    begin
    fact:=1;
    for i:=1 to p do fact:=2*fact;
    end;
    procedure init;
    begin
    assign(input,'rmq.in');
    assign(output,'rmq.out');
    reset(input);
    rewrite(output);
    end;
    procedure endl;
    begin
    close(input);close(output);
    end;
    begin
    init;
    readln(n,k);
    for i:=1 to n do read(f[i,0]);
    f[n+1,0]:=f[n,0];f[0,0]:=f[1,0];
    k:=trunc(ln(k)/ln(2));
    for j:=1 to k do
    for i:=1 to n do
    f[i,j]:=max(f[i,j-1],f[i+fact((j-1)),j-1]);
    for i:=1 to n do inc(sum,f[i,k]);
    writeln(sum);
    sum:=0;
    for j:=1 to k do
    for i:=1 to n do
    f[i,j]:=min(f[i,j-1],f[i+fact((j-1)),j-1]);
    for i:=1 to n do inc(sum,f[i,k]);
    writeln(sum);
    endl;
    end.


    2楼2011-11-11 10:11
    回复
      2025-05-16 12:29:34
      广告
      还是萎的。。。。。。


      3楼2011-11-11 10:49
      回复