(I2
I149
I5
(dp0
Vmaxarrea.%l
p1
(Vmain.cpp
p2
S'#include <cstdio>\r\n#include <stack>\r\n#include <algorithm>\r\n#define LL long long\r\n\r\nusing namespace std;\r\n\r\nconst int nmax = 1000000;\r\n\r\nint n;\r\nLL a[nmax+5];\r\nLL l[nmax+5];\r\nLL r[nmax+5];\r\nstack <int> st;\r\n\r\nint main()\r\n{\r\n    //freopen("test.in", "r", stdin);\r\n    int n;\r\n    scanf("%d", &n);\r\n    for(int i=1; i<=n; i++)\r\n        scanf("%I64d", &a[i]);\r\n\ta[0] = -1;\r\n\ta[n+1] = -1;\r\n\tst.push(0);\r\n    for(int i=1; i<=n; i++)\r\n\t{\r\n\t\twhile(a[st.top()]>=a[i])st.pop();\r\n\t\tl[i] = st.top();\r\n\t\tst.push(i);\r\n\t}\r\n\twhile(!st.empty())st.pop();\r\n\tst.push(n+1);\r\n\tfor(int i=n; i>0; i--)\r\n\t{\r\n\t\twhile(a[st.top()]>=a[i])st.pop();\r\n\t\tr[i] = st.top();\r\n\t\tst.push(i);\r\n\t}\r\n\tLL Max = -1;\r\n\tfor(int i=1; i<=n; i++)\r\n\t{\r\n\t\tLL area = a[i]*(r[i]-l[i]-1);\r\n\t\tMax = max(Max, area);\r\n\t}\r\n\tprintf("%I64d\\n", Max);\r\n    return 0;\r\n}\r\n'
p3
tp4
stp5
.