O(nm) 都能过掉
提交记录
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll n, m, a[200010];
int main(){
cin >> n >> m;
for(int i = 1; i <= n; i ++)
cin >> a[i];
for(int i = 1; i <= m; i ++){
int x;
cin >> x;
int l = 0, r = x - 1, f = 0;
for(int j = 1; j <= n; j ++){
if(a[j] > r){
a[j] += r - l + 1;
f = 1;
break;
} else if(a[j] > l){
int tmp = a[j];
a[j] += tmp - l;
l = tmp;
}
}
if(f) continue;
}
for(int i = 1; i <= n; i ++)
cout << a[i] << "\n";
return 0;
}