fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); let s = s.trim(); let numbers: Vec = s.split(['+', '*']).map(|n| n.parse().unwrap()).collect(); let ops: Vec = s.chars().filter(|&c| c == '+' || c == '*').collect(); let mut answer = numbers[0]; for (o, n) in ops.iter().zip(&numbers[1..]) { match o { '+' => answer *= n, '*' => answer += n, _ => unreachable!(), } } println!("{}", answer); }