use proconio::input; fn main() { input! { n: usize, q: usize, mut a: [i32; n], } let mut b = vec![0; n]; for _ in 0..q { input! { l: usize, r: usize, } let l = l-1; let r = r-1; b[l] ^= 1; if r+1 < n { b[r+1] ^= 1}; } let mut flip = 0; for i in 0..n { flip ^= b[i]; let ans = if flip == 1 { a[i]^flip } else { a[i] }; if i != n-1 { print!("{} ", ans); } else { println!("{}", ans); } } }