Submission #71866849


Source Code Expand

#include <bits/stdc++.h>
#include <atcoder/all>
using namespace std;
using namespace atcoder;
using ll = long long;
using mint = modint998244353;
using vi = vector<int>;
using vvi = vector<vi>;
using vvvi = vector<vvi>;
using vll = vector<ll>;
using vvll = vector<vll>;
using vvvll = vector<vvll>;
using vmi = vector<mint>;
using vvmi = vector<vmi>;
using vvvmi = vector<vvmi>;
#define all(a) (a).begin(), (a).end()
#define rep2(i, m, n) for (int i = (m); i < (n); ++i)
#define rep(i, n) rep2(i, 0, n)
#define drep2(i, m, n) for (int i = (m)-1; i >= (n); --i)
#define drep(i, n) drep2(i, n, 0)

ll op(ll a, ll b){
    return max(a, b);
}

ll e(){return -1e18;}
ll o2(ll a, ll b){
    return min(a, b);
}
ll e2(){
    return 1e18;
}

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n, q; cin >> n >> q;
    vll x(n), y(n); rep(i, n)cin >> x[i] >> y[i];
    vll z(n), w(n);
    rep(i, n){
        z[i] = x[i] - y[i];
        w[i] = x[i] + y[i];
        
    }
    segtree<ll, op, e> seg1(z), seg2(w);
    segtree<ll, o2, e2> seg3(z), seg4(w);
    while(q--){
        int j; cin >> j;
        if(j == 1){
            int i; ll a, b; cin >> i >> a >> b;
            i--;
            seg1.set(i, a-b);
            seg2.set(i, a+b);
            seg3.set(i, a-b);
            seg4.set(i, a+b);
        }else{
            int l, r; ll x, y; cin >> l >> r >>x >> y;
            l--;
            ll c = x-y, d = x+y;
            ll ans = 0;
            ans = max({abs(seg1.prod(l, r)-c), abs(seg2.prod(l, r)-d), 
                abs(seg3.prod(l, r)-c), abs(seg4.prod(l, r)-d)});
            cout << ans << endl;
        }
    }


    return 0;
}

Submission Info

Submission Time
Task F - Manhattan Christmas Tree 2
User applejam
Language C++23 (GCC 15.2.0)
Score 500
Code Size 1730 Byte
Status AC
Exec Time 231 ms
Memory 26020 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 2
AC × 24
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt
All 00_sample_00.txt, 00_sample_01.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3616 KiB
00_sample_01.txt AC 1 ms 3556 KiB
01_random_00.txt AC 197 ms 25952 KiB
01_random_01.txt AC 210 ms 25924 KiB
01_random_02.txt AC 215 ms 25908 KiB
01_random_03.txt AC 218 ms 25980 KiB
01_random_04.txt AC 221 ms 25888 KiB
01_random_05.txt AC 226 ms 26020 KiB
01_random_06.txt AC 225 ms 25976 KiB
01_random_07.txt AC 226 ms 25872 KiB
01_random_08.txt AC 227 ms 25984 KiB
01_random_09.txt AC 231 ms 25888 KiB
01_random_10.txt AC 189 ms 26020 KiB
01_random_11.txt AC 187 ms 25908 KiB
01_random_12.txt AC 188 ms 26020 KiB
01_random_13.txt AC 187 ms 25920 KiB
01_random_14.txt AC 187 ms 25980 KiB
01_random_15.txt AC 106 ms 3468 KiB
01_random_16.txt AC 130 ms 25952 KiB
01_random_17.txt AC 168 ms 25940 KiB
01_random_18.txt AC 166 ms 25952 KiB
01_random_19.txt AC 164 ms 25876 KiB
01_random_20.txt AC 164 ms 26020 KiB
01_random_21.txt AC 167 ms 25888 KiB