ac1169.pas

来自「某牛人写的acm.tongji.edu.cn上大部分ac的代码,仅供学习研究,请」· PAS 代码 · 共 33 行

PAS
33
字号
program tju1169;
const
  maxn=1000001;
var
  h,l,r:array[0..maxn]of longint;
  n,i:longint;
  ans,t:int64;
begin
  repeat
    read(n);
    for i:=1 to n do
      read(h[i]);
    h[n+1]:=0;

    for i:=1 to n do begin
      l[i]:=i;
      while (h[i]<=h[l[i]-1]) do l[i]:=l[l[i]-1];
    end;

    for i:=n downto 1 do begin
      r[i]:=i;
      while (h[i]<=h[r[i]+1]) do r[i]:=r[r[i]+1];
    end;

    ans:=0;
    for i:=1 to n do begin
      t:=int64(h[i])*(r[i]-l[i]+1);
      if t>ans then ans:=t;
    end;
    writeln(ans);
  until seekeof;
end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?