Ranking modificado
Ver en PDFRanking modificado

Tras ayudar a corregir el sistema de emparejamiento, Karel descubre que Glitch también modificó la tabla de posiciones de NEXUS. Los jugadores deberían aparecer en el orden de su clasificación, pero la entidad intercambió sus lugares para hacer que el ranking pareciera imposible.
Los creadores de NEXUS te han pedido que les ayudes a calcular qué tan alterado está el ranking. Para medir su nivel de corrupción, deberás contar la cantidad de inversiones. Una inversión es una pareja de jugadores cuyo orden fue alterado. Supón que el jugador debe aparecer antes que el jugador
. Si en la lista modificada por Glitch el jugador
aparece antes que el jugador
, esa pareja se considera invertida y aumenta en
el nivel de corrupción.
Karel debe calcular ese nivel para que NEXUS pueda seguir el rastro de Glitch hasta el núcleo del servidor.
Problema
En la primera fila del mundo hay montones de zumbadores con los números del al
en algún orden. El montón en la columna
tiene
zumbadores.
Una pareja de columnas se considera una inversión si se cumplen las dos condiciones siguientes:
; es decir, la columna
está antes que la columna
.
; es decir, el valor en la columna
es mayor que el valor en la columna
.
El nivel de corrupción es la cantidad total de inversiones de la permutación. Observa que cada pareja se cuenta sólo una vez.
Tu programa debe dejar un montón con exactamente el nivel de corrupción de la lista en columna de la fila
.
Entrada

En el ejemplo, los valores en la primera fila son: . La segunda fila comienza vacía.
Salida

Las parejas de columnas que están invertidas son:
,
y
;
,
y
;
.
En total hay inversiones. Por lo tanto, Karel deja un montón de
zumbadores en la posición
.
Consideraciones
- Karel inicia en la posición (1,1) viendo hacia el Norte.
- Karel lleva INFINITOS zumbadores en la mochila.
- En la primera fila hay
montones sin espacios entre ellos.
- Los valores de los montones forman una permutación de los números del
al
.
- El mundo es un cuadrado de
sin paredes internas.
- Para este problema puedes utilizar un máximo de 12 variables por instrucción.
- Para obtener los puntos de este problema, únicamente importan los zumbadores en la posición
; la posición y orientación final de Karel no importan.
Subtareas
- ⭐ Subtarea 1 (25 puntos): La permutación está ordenada de menor a mayor o de mayor a menor.
- Subtarea 2 (25 puntos): Sin consideraciones adicionales.
- Subtarea 3 (25 puntos): Karel puede ejecutar la instrucción
avanza/move()como máximoveces.
- Subtarea 4 (25 puntos): Karel puede ejecutar la instrucción
avanza/move()como máximoveces.
Comentarios