Найти значение после выполнения запросов Increment Decrement

Опубликовано: 19 Сентября, 2022

Учитывая переменную X , имеющую начальное значение 0 , и массив запросов Q[] размера N , содержащий тип операций, задача состоит в том, чтобы вернуть значение N после выполнения всех следующих операций:

  • Тип-1: увеличить значение X на 1.
  • Тип 2: уменьшить значение X на 1.

Примеры:

Input: Q = {2, 1, 1}
Output: 1
Explanation: The operations are performed as follow:
Initially, X = 0, 
Query 1(Type 2): X is decremented by 1, X =  0 – 1 = -1 
Query 2(Type 1): X is incremented by 1, X = -1 + 1 = 0
Query 3(Type 1): X is incremented by 1, X = 0 + 1 = 1
Hence, the output will be 1

Input: Q = {1, 1, 1}
Output: 3

Подход: Чтобы решить проблему, следуйте следующей идее:

  • Пройдите по заданному массиву запросов.
  • Всякий раз, когда элемент массива равен 1, увеличивайте N на 1 и
  • Всякий раз, когда элемент массива равен 2, уменьшайте N на 1.
  • Верните окончательное значение N в качестве требуемого ответа.

Ниже приведена реализация вышеуказанного подхода:

Временная сложность : O(N).
Вспомогательное пространство : O(1).