100
#WA0581. 【入门】A+B-C+D【入门】A+B-C+D
题目描述
输入一个只包含加法和减法的数学表达式,输出表达式的答案。
提示:
- 如果你没有思路,可以尝试补全下面的代码(这并不最简单的方法,但是可以通过此题)
string s;
cin >> s;
// 在 s 前面多加一个 +
s = "+" + s;
long long n = s.size(), ans = 0;
for (int i = 0; i < n; i++) {
// 每次遍历到 + (或者 -)
// 就顺便把后面的数处理出来
}
- 你可以通过下面的方法,将字符 '1' 转化为数字 1
string s = "123456";
int x = s[0] - '0'; // 将 s[0] 转化为对应的数字
- 当然,如果你有更简单的方法,请忽略上面的内容。。。。。。
输入格式
一行为一个不包含空格的数学表达式。
输出格式
输出表达式的答案。
1+2-3+4
4
1000000000-33333333+1000000000+3333
1966670000
1000000000+1000000000+1000000000
3000000000
数据规模与约定
对于 的数据,数学表达式的字符数量不超过 ,数学表达式中仅包含加法和减法,数学表达式中的数都在 范围内。
- 子任务 1(30 分):表达式中仅包含加法
- 子任务 2(30 分):数学表达式中的数都是一位数
- 子任务 3(40 分):没有特殊限制
相关
在下列比赛中: