fn read_vec() -> Vec { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim() .split_whitespace() .map(|e| e.parse().ok().unwrap()) .collect() } macro_rules! vecshare { ($x:ident, $v:expr, $idx:expr) => { let $x = $v[$idx-1].clone(); }; ( $v:expr; $($x:ident),* ) => { let mut idx = 0; $( idx += 1; vecshare!($x, $v, idx); )* } } fn main() { let ab:Vec = read_vec(); vecshare!(ab; a, b); let max_price = a + b * 5; let mut ans = vec![]; for i in 1..=max_price { let b_use = if i / 5 > b { b } else { i / 5 }; let a_use = if i > b_use * 5 { i - b_use * 5 } else { 0 }; if a_use <= a { ans.push(i); } } for a in ans { println!("{}", a); } }