Saltar al contenido

Encuentre valor después de ejecutar consultas de Incremento Decremento

Ver discusión

Mejorar artículo

Guardar artículo

me gusta el articulo

dada una variable X tener un valor inicial 0 y una serie de preguntas q[] de tamaño norte con el tipo de operaciones, el trabajo es devolver el valor de norte después de realizar todo lo siguiente:

  • Tipo 1: aumentar El valor de X por 1.
  • Tipo 2: Reducir El valor de X por 1.

Ejemplos:

Aporte: V = {2, 1, 1}
Salida: 1
Explicación: Las operaciones se realizan de la siguiente manera:
Inicialmente, X = 0,
Consulta 1 (Tipo 2): X se decrementa en 1, X = 0 – 1 = -1
Consulta 2 (Tipo 1): X se incrementa en 1, X = -1 + 1 = 0
Consulta 3 (Tipo 1): X se incrementa en 1, X = 0 + 1 = 1
Entonces la salida es 1

Aporte: V = {1, 1, 1}
Salida: 3

Acercarse: Siga la siguiente idea para resolver el problema:

  • Recorra la matriz dada de Consultas.
  • Siempre que el elemento de la matriz sea 1, aumente N en 1 y
  • Siempre que el elemento de la matriz sea 2, disminuya N en 1.
  • Devuelva el valor final de N como la respuesta requerida.

A continuación se muestra la implementación del enfoque anterior:

C++

 

#include <bits/stdc++.h>

using namespace std;

 

int findvalue(vector<int>& queries)

{

    

    int n = queries.size();

    int x = 0;

    for (int i = 0; i < n; i++) {

 

        

        if (queries[i] == 1) {

            x = x + 1;

        }

 

        

        else {

            x = x - 1;

        }

    }

    return x;

}

 

int main()

{

    

    

    vector<int> queries = { 2, 1, 1 };

    int ans = findvalue(queries);

 

    

    cout << ans;

    return 0;

}

Complejidad del tiempo: A).
cuarto auxiliar: O(1).