use std::collections::HashMap; use proconio::{fastout, input, marker::Usize1}; #[fastout] fn main() { input! { t: usize } for _ in 0..t { let ans = solve(); println!("{}", if ans { "Yes" } else { "No" }); } } fn solve() -> bool { input! { n: usize, xyc: [(Usize1, Usize1, char); 2* n], } let mut row = HashMap::new(); let mut col = HashMap::new(); for &(x, y, c) in &xyc { if c == 'x' { *row.entry(y).or_insert(0) ^= 1; } else { *col.entry(x).or_insert(0) ^= 1; } } row.values().sum::() == col.values().sum::() }