2011. Final Value of Variable After Performing Operations LeetCode Solution

In this guide, you will get 2011. Final Value of Variable After Performing Operations LeetCode Solution with the best time and space complexity. The solution to Final Value of Variable After Performing Operations problem is provided in various programming languages like C++, Java, and Python. This will be helpful for you if you are preparing for placements, hackathons, interviews, or practice purposes. The solutions provided here are very easy to follow and include detailed explanations.

Table of Contents

  1. Problem Statement
  2. Complexity Analysis
  3. Final Value of Variable After Performing Operations solution in C++
  4. Final Value of Variable After Performing Operations solution in Java
  5. Final Value of Variable After Performing Operations solution in Python
  6. Additional Resources
2011. Final Value of Variable After Performing Operations LeetCode Solution image

Problem Statement of Final Value of Variable After Performing Operations

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: 1
Explanation: 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: 3
Explanation: 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.

See also  2344. Minimum Deletions to Make Array Divisible LeetCode Solution

Example 3:

Input: operations = [“X++”,”++X”,”–X”,”X–“]
Output: 0
Explanation: 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–".

Complexity Analysis

  • Time Complexity: O(n)
  • Space Complexity: O(1)

2011. Final Value of Variable After Performing Operations LeetCode Solution in C++

class Solution {
 public:
  int finalValueAfterOperations(vector<string>& operations) {
    int ans = 0;

    for (const string& op : operations)
      ans += op[1] == '+' ? 1 : -1;

    return ans;
  }
};
/* code provided by PROGIEZ */

2011. Final Value of Variable After Performing Operations LeetCode Solution in Java

class Solution {
  public int finalValueAfterOperations(String[] operations) {
    int ans = 0;

    for (final String op : operations)
      ans += op.charAt(1) == '+' ? 1 : -1;

    return ans;
  }
}
// code provided by PROGIEZ

2011. Final Value of Variable After Performing Operations LeetCode Solution in Python

class Solution:
  def finalValueAfterOperations(self, operations: list[str]) -> int:
    return sum(op[1] == '+' or -1 for op in operations)
# code by PROGIEZ

Additional Resources

Happy Coding! Keep following PROGIEZ for more updates and solutions.