package main import ( "bufio" "fmt" "os" "strconv" "strings" ) var sc = bufio.NewScanner(os.Stdin) func main() { sc.Split(bufio.ScanWords) s := nextLine() s = strings.Replace(s, "*", " * ", -1) s = strings.Replace(s, "+", " + ", -1) expr := strings.Split(s, " ") n, _ := strconv.Atoi(expr[0]) for i := 1; i < len(expr)-1; i += 2 { v, _ := strconv.Atoi(expr[i+1]) switch expr[i] { case "*": n += v case "+": n *= v } } fmt.Println(n) } func nextLine() string { sc.Scan() return sc.Text() } func nextInt() int { i, _ := strconv.Atoi(nextLine()) return i } func nextInt64() int64 { i, _ := strconv.ParseInt(nextLine(), 10, 64) return i } func nextUint64() uint64 { i, _ := strconv.ParseUint(nextLine(), 10, 64) return i } func nextFloat() float64 { f, _ := strconv.ParseFloat(nextLine(), 64) return f }