Guest User

updatemax

a guest
Nov 1st, 2025
35
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.93 KB | None | 0 0
  1.             int l, r, val;
  2.             cin >> l >> r >> val;
  3.             l--;
  4.             r--;
  5.             for (int i = l; i <= r; ){
  6.                 if (block_start[i] && i + len - 1 <= r){
  7.                     block[block_num[i]] += val;
  8.                     add[block_num[i]] += val;
  9.                     i += len;
  10.                 }
  11.                 else{
  12.                     a[i] += val;
  13.                     i++;
  14.                 }
  15.             }
  16.             int bsl = block_num[l] * len;
  17.             block[block_num[l]] = -INF;
  18.             for (int i = bsl; i < min(bsl + len, n); i++){
  19.                 block[block_num[l]] = max(block[block_num[l]], a[i] + add[block_num[l]]);
  20.             }
  21.             int bsr = block_num[r] * len;
  22.             block[block_num[r]] = -INF;
  23.             for (int i = bsr; i < min(bsr + len, n); i++){
  24.                 block[block_num[r]] = max(block[block_num[r]], a[i] + add[block_num[r]]);
  25.             }
Advertisement
Add Comment
Please, Sign In to add comment