Submission #66104803
Source Code Expand
#include <iostream>
#include <map>
#define orzrgw;
#define ll long long
#define R(a,b,c) for(ll a=b;a<=c;a++)
#define E(a,b,c) for(ll a=b;a>=c;a--)
using namespace std;
ll n, top;
ll a[200025],pre[200025],nxt[200025],st[200025],lst[200025];
ll ans[200025];
map<ll, ll> mp;
int main(){
cin>>n;
R(i,1,n){
cin>>a[i];
lst[i] = mp[a[i]];
mp[a[i]] = i;
orzrgw;
nxt[i] = n + 1;
pre[i] = 0;
}
orzrgw;
R(i,1,n){
while(top && a[i] > a[st[top]]){
nxt[st[top]] = i;
--top;
orzrgw;
}
st[++top] = i;
}
top = 0;
E(i,n,1){
while(top && a[i] > a[st[top]]){
pre[st[top]] = i;
--top;
orzrgw;
}
st[++top] = i;
}
R(i,1,n){
pre[i] = max(pre[i], lst[i]);
orzrgw;
ans[1] += a[i], ans[i - pre[i] + 1] -= a[i];
ans[nxt[i] - i + 1] -= a[i];
orzrgw;
ans[nxt[i] - pre[i] + 1] += a[i];
}
R(i,1,n)ans[i] += ans[i - 1];
R(i,1,n){
ans[i] += ans[i - 1];
cout<<ans[i]<<'\n';
}
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | F - Sums of Sliding Window Maximum |
| User | Genius_Star |
| Language | C++ 17 (gcc 12.2) |
| Score | 550 |
| Code Size | 1172 Byte |
| Status | AC |
| Exec Time | 130 ms |
| Memory | 24612 KiB |
Compile Error
Main.cpp:3:9: warning: ISO C++11 requires whitespace after the macro name
3 | #define orzrgw;
| ^~~~~~
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 550 / 550 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt |
| All | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-small-01.txt, 01-small-02.txt, 01-small-03.txt, 01-small-04.txt, 01-small-05.txt, 01-small-06.txt, 01-small-07.txt, 01-small-08.txt, 01-small-09.txt, 01-small-10.txt, 01-small-11.txt, 01-small-12.txt, 01-small-13.txt, 01-small-14.txt, 01-small-15.txt, 01-small-16.txt, 01-small-17.txt, 01-small-18.txt, 01-small-19.txt, 01-small-20.txt, 01-small-21.txt, 01-small-22.txt, 01-small-23.txt, 01-small-24.txt, 02-large-01.txt, 02-large-02.txt, 02-large-03.txt, 02-large-04.txt, 02-large-05.txt, 02-large-06.txt, 02-large-07.txt, 02-large-08.txt, 02-large-09.txt, 02-large-10.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00-sample-01.txt | AC | 1 ms | 3496 KiB |
| 00-sample-02.txt | AC | 1 ms | 3496 KiB |
| 00-sample-03.txt | AC | 1 ms | 3472 KiB |
| 01-small-01.txt | AC | 1 ms | 3500 KiB |
| 01-small-02.txt | AC | 1 ms | 3560 KiB |
| 01-small-03.txt | AC | 1 ms | 3508 KiB |
| 01-small-04.txt | AC | 1 ms | 3436 KiB |
| 01-small-05.txt | AC | 1 ms | 3640 KiB |
| 01-small-06.txt | AC | 1 ms | 3436 KiB |
| 01-small-07.txt | AC | 1 ms | 3436 KiB |
| 01-small-08.txt | AC | 1 ms | 3636 KiB |
| 01-small-09.txt | AC | 1 ms | 3508 KiB |
| 01-small-10.txt | AC | 1 ms | 3624 KiB |
| 01-small-11.txt | AC | 1 ms | 3468 KiB |
| 01-small-12.txt | AC | 1 ms | 3536 KiB |
| 01-small-13.txt | AC | 1 ms | 3516 KiB |
| 01-small-14.txt | AC | 1 ms | 3496 KiB |
| 01-small-15.txt | AC | 2 ms | 3760 KiB |
| 01-small-16.txt | AC | 2 ms | 3684 KiB |
| 01-small-17.txt | AC | 1 ms | 3604 KiB |
| 01-small-18.txt | AC | 2 ms | 3828 KiB |
| 01-small-19.txt | AC | 2 ms | 3720 KiB |
| 01-small-20.txt | AC | 2 ms | 3712 KiB |
| 01-small-21.txt | AC | 2 ms | 3840 KiB |
| 01-small-22.txt | AC | 2 ms | 3676 KiB |
| 01-small-23.txt | AC | 2 ms | 3748 KiB |
| 01-small-24.txt | AC | 2 ms | 3676 KiB |
| 02-large-01.txt | AC | 62 ms | 12980 KiB |
| 02-large-02.txt | AC | 130 ms | 16912 KiB |
| 02-large-03.txt | AC | 30 ms | 12840 KiB |
| 02-large-04.txt | AC | 119 ms | 16944 KiB |
| 02-large-05.txt | AC | 63 ms | 11504 KiB |
| 02-large-06.txt | AC | 107 ms | 23828 KiB |
| 02-large-07.txt | AC | 108 ms | 23988 KiB |
| 02-large-08.txt | AC | 84 ms | 14456 KiB |
| 02-large-09.txt | AC | 110 ms | 24612 KiB |
| 02-large-10.txt | AC | 103 ms | 23980 KiB |