题目描述:
存在一种仅支持 4 种操作和 1 个变量 X 的编程语言:
++X 和 X++ 使变量 X 的值 加 1
--X 和 X-- 使变量 X 的值 减 1
最初,X 的值是 0
给你一个字符串数组 operations ,这是由操作组成的一个列表,返回执行所有操作后, X 的 最终值 。
示例 1:
输入:operations = ["--X","X++","X++"]
输出:1
解释:操作按下述步骤执行:
最初,X = 0
--X:X 减 1 ,X = 0 - 1 = -1
X++:X 加 1 ,X = -1 + 1 = 0
X++:X 加 1 ,X = 0 + 1 = 1
示例 2:
输入:operations = ["++X","++X","X++"]
输出:3
解释:操作按下述步骤执行:
最初,X = 0
++X:X 加 1 ,X = 0 + 1 = 1
++X:X 加 1 ,X = 1 + 1 = 2
X++:X 加 1 ,X = 2 + 1 = 3
示例 3:
输入:operations = ["X++","++X","--X","X--"]
输出:0
解释:操作按下述步骤执行:
最初,X = 0
X++:X 加 1 ,X = 0 + 1 = 1
++X:X 加 1 ,X = 1 + 1 = 2
--X:X 减 1 ,X = 2 - 1 = 1
X--:X 减 1 ,X = 1 - 1 = 0
提示:
1 <= operations.length <= 100
operations[i]
将会是"++X"
、"X++"
、"--X"
或"X--"
-
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/final-value-of-variable-after-performing-operations
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 分析: -
本题难度不大,属于简单题,简单的将
"++X"
、"X++"
、"--X"
或"X--"都理解为字符串,然后进行判断即可
int finalValueAfterOperations(char ** operations, int operationsSize) { int x = 0; for (int i = 0; i < operationsSize; i++) { char *op = operations[i]; if (!strcmp(op, "X++") || !strcmp(op, "++X")) { x++; } else { x--; } } return x; }
C语言题解
class Solution { public: int finalValueAfterOperations(vector<string>& ops) { int x = 0; for (string& s : ops) x += s[1] == '+' ? 1 : -1; return x; } };
C++题解