2936.算式添加括号得目标值k的方式数量-计算机与人工智能第一批

通过数:9提交数:12学校:上海财经大学保研机试真题 题目列表 标签
题目描述 给定一个仅包含数字(非负,范围 $0 \leq \text{数字} \leq 999$)和加减乘除运算符($+、-、 、/$)的字符串算式,允许在算式中添加任意数量的括号(括号仅用于改变运算顺序,不可改变数字和运算符的原始顺序)。 请计算所有添加括号的方式中,使得添加括号后的算式计算结果等于给定目标值 $k$ 的方式数量。 注:除法运算需遵循整数除法规则(保证分母不为0),若两种括号添加方式最终对应相同的运算顺序(即冗余括号不同但计算逻辑一致),视为同一种方式。 输入格式 1. 第一行输入一个字符串 $expr$,表示原始算式(字符串中无空格,数字与运算符交替出现,格式合法,数字不含前导零)。 2. 第二行输入一个整数 $k$,表示目标计算结果。 输出格式 输出一个非负整数,表示使算式结果等于 $k$ 的括号添加方式数量;若不存在符合条件的方式,输出 $0$。 数据范围 原始算式长度:$3 \leq \text{长度} \leq 100$(至少包含 2 个数字和 1 个运算符)。 算式中的数字:$0 \leq \text{数字} \leq 999$(非负,无前置零)。 目标值 $k$:$-10^9 \leq k \leq 10^9$。 运算符种类:仅包含 $+、-、 、/$,且除法运算中分母不为0。 输入样例 1+2 3 7 输出样例 1
C
补全
点击调试按钮即可调试代码。

点击提交按钮即可提交代码。