use std::collections::HashMap; use std::io; fn main() -> io::Result<()> { let mut l1: Vec = vec!(); let mut l2: HashMap = HashMap::default(); for line in io::stdin().lines() { let line = line?; let parts: Vec<&str> = line.trim().split_whitespace().collect(); let (n1, n2) = (parts[0], parts[1]); l1.push(n1.parse().unwrap()); let v = l2.entry(n2.parse::().unwrap()).or_insert(0); *v += 1; } let mut sum = 0; for n1 in l1.into_iter() { sum += n1*l2.get(&n1).unwrap_or(&0); } println!("{}", sum); Ok(()) }