(I2
I160
I5
(dp0
Vmaxarrea.%l
p1
(Vmaxarrea.cpp
p2
S'#include<cstdio>\r\nusing namespace std;\r\nstruct lis{int val,next;};\r\nlis v[1000001];\r\nint d[15001];\r\nint de[1000001];\r\nint main()\r\n{\r\n    //freopen("maxarrea.in","r",stdin);\r\n    //freopen("maxarrea.out","w",stdout);\r\n    int n,i,ma=0,ad;\r\n    long long x,h,tot=0;\r\n    scanf("%d",&n);\r\n    for(i=1;i<=n;i++)\r\n    {\r\n        scanf("%d",&v[i].val);\r\n        if(d[v[i].val]==0)\r\n        {\r\n            d[v[i].val]=i;\r\n        }\r\n        else\r\n        {\r\n            v[i].next=d[v[i].val];\r\n            d[v[i].val]=i;\r\n        }\r\n        if(v[i].val>ma)\r\n        {\r\n            ma=v[i].val;\r\n        }\r\n    }\r\n    for(h=ma;h>=1;h--)\r\n    {\r\n        ad=d[h];\r\n        while(ad!=0)\r\n        {\r\n            x=1+de[ad+1]+de[ad-1];\r\n            de[ad+de[ad+1]]=x;\r\n            de[ad-de[ad-1]]=x;\r\n            if(x*h>tot)\r\n            {\r\n                tot=x*h;\r\n            }\r\n            ad=v[ad].next;\r\n        }\r\n    }\r\n    printf("%lld",tot);\r\n    return 0;\r\n}'
p3
tp4
stp5
.