LeetCode in Kotlin

2011. Final Value of Variable After Performing Operations

Easy

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

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:

Solution

class Solution {
    fun finalValueAfterOperations(operations: Array<String>): Int {
        var xValue = 0
        for (word in operations) {
            if (word.contains("+")) {
                xValue++
            } else {
                xValue--
            }
        }
        return xValue
    }
}