use std::collections::BTreeSet; fn main() { let mut nm = String::new(); std::io::stdin().read_line(&mut nm).ok(); let nm: Vec = nm.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); let n = nm[0]; let m = nm[1]; let mut x = String::new(); std::io::stdin().read_line(&mut x).ok(); let x: Vec = x.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); let mut y = String::new(); std::io::stdin().read_line(&mut y).ok(); let y: BTreeSet = y.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); for &v in x.iter() { if let Some(w) = y.range(v..).nth(0) { println!("{}", w-v); } else { println!("Infinity"); } } }