Final Value of Variable After Performing ...

Final Value of Variable After Performing Operations

Sep 18, 2022

Final Value of Variable After Performing Operations

(LeetCode easy problem)

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.

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--".

The approach I have used here is the simplest, in case I encounter “++X” or “X++” I will simply increment the value of x, if I get, or "X--" I will simply decrement the value. In case I encounter anything else I will simply continue.

The code is given below :


var finalValueAfterOperations = function(operations) {
 let num = 0;
    operations.forEach((operation, i)=>{
         num = operation === '--X' || operation === 'X--'  ?  num - 1  : operation === 'X++' ||  operation === '++X' ? num + 1  : 0;
       
    })
    return num;
};

Time Complexity: O(n)

Space Complexity: O(1)

Runtime And Memory Usage

Hope this post is helpful. I share my knowledge and teach people about programming and we have more than 12k @codewithyahi Instagram family.

Since you enjoyed reading my blog, why not buy me a coffee and support my work here!! https://www.buymeacoffee.com/yajindra

Enjoy this post?

Buy CodewithYaji a coffee

More from CodewithYaji