Formatted question description: https://leetcode.ca/all/2011.html

# 2011. Final Value of Variable After Performing Operations (Easy)

There is a programming language with only **four** operations and **one** variable `X`

:

`++X`

and`X++`

**increments**the value of the variable`X`

by`1`

.`--X`

and`X--`

**decrements**the value of the variable`X`

by`1`

.

Initially, the value of `X`

is `0`

.

Given an array of strings `operations`

containing a list of operations, return *the final value of *

`X`

*after performing all the operations*.

**Example 1:**

Input:operations = ["--X","X++","X++"]Output:1Explanation:The operations are performed as follows: Initially, X = 0. --X: X is decremented by 1, X = 0 - 1 = -1. X++: X is incremented by 1, X = -1 + 1 = 0. X++: X is incremented by 1, X = 0 + 1 = 1.

**Example 2:**

Input:operations = ["++X","++X","X++"]Output:3Explanation:The operations are performed as follows: Initially, X = 0. ++X: X is incremented by 1, X = 0 + 1 = 1. ++X: X is incremented by 1, X = 1 + 1 = 2. X++: X is incremented by 1, X = 2 + 1 = 3.

**Example 3:**

Input:operations = ["X++","++X","--X","X--"]Output:0Explanation:The operations are performed as follows: Initially, X = 0. X++: X is incremented by 1, X = 0 + 1 = 1. ++X: X is incremented by 1, X = 1 + 1 = 2. --X: X is decremented by 1, X = 2 - 1 = 1. X--: X is decremented by 1, X = 1 - 1 = 0.

**Constraints:**

`1 <= operations.length <= 100`

`operations[i]`

will be either`"++X"`

,`"X++"`

,`"--X"`

, or`"X--"`

.

## Solution 1.

```
// OJ: https://leetcode.com/problems/final-value-of-variable-after-performing-operations/
// Time: O(N)
// Space: O(1)
class Solution {
public:
int finalValueAfterOperations(vector<string>& A) {
int x = 0;
for (auto &s : A) {
if (s[0] == '+' || s[1] == '+') ++x;
else --x;
}
return x;
}
};
```