Encuentre la posición de las Torres no atacantes en orden lexicográfico que se pueden colocar en el tablero de ajedrez N*N

Dado un número entero N y una array arr[] de posiciones que denota las posiciones de las torres no atacantes ya colocadas, la tarea es encontrar las posiciones de las torres no atacantes en orden lexicográfico que se pueden colocar en el tablero de ajedrez N*N. Movimiento de torres: cualquier torre puede moverse horizontal o … Continue reading «Encuentre la posición de las Torres no atacantes en orden lexicográfico que se pueden colocar en el tablero de ajedrez N*N»

Encuentre enteros distintos para un triplete con un producto dado

Dado un entero X , la tarea es encontrar los tres enteros distintos mayores que 1 , es decir , A , B y C tales que (A * B * C) = X. Si no existe tal triplete, imprima -1 . Ejemplos:  Entrada: X = 64  Salida: 2 4 8  (2 * 4 * … Continue reading «Encuentre enteros distintos para un triplete con un producto dado»

Área del Rectángulo más grande sin un punto dado

Dada la longitud L y la anchura B de un rectángulo y la posición de un agujero en el rectángulo como coordenada (X, Y) , la tarea es encontrar el área del rectángulo más grande dentro del rectángulo dado de modo que no contenga el agujero. Nota: El rectángulo se coloca en el origen cuando … Continue reading «Área del Rectángulo más grande sin un punto dado»

Teorema maestro avanzado para las recurrencias de divide y vencerás

El teorema maestro se utiliza para determinar el tiempo de ejecución de los algoritmos (algoritmos de divide y vencerás) en términos de notaciones asintóticas. Considere un problema que se resuelva usando recursividad.   function f(input x size n) if(n < k) solve x directly and return else divide x into a subproblems of size n/b call f … Continue reading «Teorema maestro avanzado para las recurrencias de divide y vencerás»

Encuentra el ganador en el juego de N bolas, en el que un jugador puede eliminar cualquier bola en el rango [A, B] en un solo movimiento

Dados dos números enteros A y B , y dado también que Alicia y Bob están jugando un juego que comienza con una bolsa que contiene N bolas, en el que, en un solo movimiento, un jugador puede sacar cualquier número de bolas entre el rango [A, B] y si el jugador no puede quitar … Continue reading «Encuentra el ganador en el juego de N bolas, en el que un jugador puede eliminar cualquier bola en el rango [A, B] en un solo movimiento»

Directrices para el análisis asintótico

En este artículo, la atención se centra en aprender algunas reglas que pueden ayudar a determinar el tiempo de ejecución de un algoritmo. El análisis asintótico se refiere a calcular el tiempo de ejecución de cualquier operación en unidades matemáticas de cálculo. En el análisis asintótico, se evalúa el rendimiento de un algoritmo en términos … Continue reading «Directrices para el análisis asintótico»

Una pregunta interesante sobre la complejidad del tiempo.

¿Cuál es la complejidad temporal de la siguiente función fun()? int fun(int n) {         for (int i = 1; i <= n; i++)     {         for (int j = 1; j < n; j += i)         {             // Some O(1) task         }     }     } Para i = 1, el ciclo interno se ejecuta n veces. Para … Continue reading «Una pregunta interesante sobre la complejidad del tiempo.»

Cuente los subarreglos que tienen la suma de elementos en posiciones pares e impares iguales

Dada una array arr[] de enteros, la tarea es encontrar el recuento total de subarreglos de modo que la suma de los elementos en las posiciones pares y la suma de los elementos en las posiciones impares sean iguales . Ejemplos: Entrada: arr[] = {1, 2, 3, 4, 1} Salida: 1 Explicación:  {3, 4, 1} … Continue reading «Cuente los subarreglos que tienen la suma de elementos en posiciones pares e impares iguales»

Última cifra de un número elevado a la última cifra de N factorial

Dados dos números X y N , la tarea es encontrar el último dígito de X elevado al último dígito de N factorial , es decir  . Ejemplos:   Entrada: X = 5, N = 2  Salida: 5  Explicación:  Dado que, 2! mod 10 = 2  por lo tanto 5 2 = 25 y el último … Continue reading «Última cifra de un número elevado a la última cifra de N factorial»

Encuentra el número más pequeño que divide a X^X

Dado un número X , encuentra el número más pequeño, que es mayor que 1 , que divide a X X. En la pregunta dada, siempre se supone que X es mayor que 1. Ejemplos:   Entrada: X = 6  Salida: 2  Explicación: Como, 6 6 es igual a 46656, que es divisible por 2 y … Continue reading «Encuentra el número más pequeño que divide a X^X»