제출 #535701

#제출 시각아이디문제언어결과실행 시간메모리
535701sam571128Snowball (JOI21_ho_t2)C++17
33 / 100
1277 ms2380 KiB
#include <bits/stdc++.h> #define int long long #define fastio ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); using namespace std; const int N = 2e3+5; int arr[N], mn[N], mx[N], ans[N]; int now = 0; signed main(){ fastio int n,q; cin >> n >> q; for(int i = 1;i <= n;i++){ cin >> arr[i]; mn[i] = mx[i] = arr[i]; } for(int i = 0;i < q;i++){ int x; cin >> x; for(int j = 1;j <= n;j++){ arr[j] += x; if(x < 0){ if(j==1){ ans[j] += max((int)0,mn[j]-arr[j]); }else{ if(mn[j] > mx[j-1]){ ans[j] += max((int)0,mn[j]-max(mx[j-1],arr[j])); } } }else{ if(j==n){ ans[j] += max((int)0,arr[j]-mx[j]); }else{ if(mx[j] < mn[j+1]){ ans[j] += max((int)0,min(arr[j],mn[j+1])-mx[j]); } } } mn[j] = min(mn[j],arr[j]); mx[j] = max(mx[j],arr[j]); } } for(int i = 1;i <= n;i++) cout << ans[i] << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...