use std::io::*; use std::str::FromStr; #[allow(dead_code)] fn get_line() -> String { let stdin = stdin(); let mut line = String::new(); stdin.lock().read_line(&mut line).expect("io error."); line.trim().to_string() } #[allow(dead_code)] fn get_word() -> T { (&get_line()).parse().ok().expect("parse error.") } #[allow(dead_code)] fn get_vec() -> Vec { (&get_line()).split(' ').map(|x| x.parse().ok().expect("parse error.")).collect() } fn main() { let n = get_word::(); let mut items: Vec = vec![0; 20]; let mut ans: u8 = 0; for _ in 0..n { let v = get_vec::(); for i in 0..3 { ans += items[v[i]]; items[v[i]] = 1 - items[v[i]]; } } // println!("{:?}", items); ans += items[0..20].iter().sum::() / 4; println!("{}", ans); }