// 入力の制約チェック用 #include #include using namespace std; using namespace atcoder; #define rep(i, n) for (int i = 0; i < (int)(n); ++i) #define int long long signed main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N, Q; cin >> N >> Q; assert(1 <= N && N <= 100000); assert(1 <= Q && Q <= 100000); vector A(N); rep(i, N) { cin >> A[i]; assert(0 <= A[i] && A[i] <= 100000); } rep(q, Q) { int t; cin >> t; assert(t == 1 || t == 2); if (t == 1) { int x, y; cin >> x >> y; assert(1 <= x && x <= N); assert(0 <= y && y <= 100000); --x; } else { int l, r, a, b; cin >> l >> r >> a >> b; assert(1 <= l && l <= r && r <= N); assert(0 <= a && a <= 100000); assert(0 <= b && b <= 100000); --l; } } }