Caso # | Resultado | Tiempo | Memoria |
---|---|---|---|
#1 |
Correcto
|
0.185 s | 14 KBi |
#2 |
Correcto
|
0.17 s | 13 KBi |
#3 |
Correcto
|
0.161 s | 13 KBi |
#4 |
Correcto
|
0.171 s | 14 KBi |
#5 |
Correcto
|
0.161 s | 14 KBi |
#6 |
Tiempo límite excedido
|
1.052 s | 113 KBi |
#7 |
Tiempo límite excedido
|
1.024 s | 107 KBi |
#8 |
Tiempo límite excedido
|
1.08 s | 97 KBi |
#9 |
Tiempo límite excedido
|
1.014 s | 123 KBi |
#10 |
Tiempo límite excedido
|
1.025 s | 98 KBi |
/** * Entrada * El archivo de entrada contiene varios casos de prueba. En la primera línea hay un número C, el número de casos. * Luego siguen C casos, cada uno compuesto de 2 líneas: * La primera línea tiene N, el número de edificios. * La segunda línea tiene N números enteros: la altura ai del edificio i para todo 0 ≤ i < N. Está garantizado que ai satisface 0 ≤ ai ≤ 109. * * Salida * Para cada caso, la salida debe tener una línea en el formato Case #x: v0 v1 ... vn-1, donde x es el número de caso (empezando en 1) * y vi es la altura del edificio que bloquea la vista al mirar al horizonte desde el techo del edificio i, ó -1 si ningún edificio bloquea la vista. * * Entrada de ejemplo * 3 * 10 * 4 2 1 6 3 2 5 3 1 4 * 3 * 1 1 2 * 6 * 3 3 2 2 1 1 * * Salida de ejemplo * Case #1: 6 6 6 -1 5 5 -1 4 4 -1 * Case #2: 2 2 -1 * Case #3: -1 -1 -1 -1 -1 -1 * */ import java.util.Scanner; public class Main { public static void main(String[] args) { try { Scanner input = new Scanner(System.in); int c = input.nextInt(); for (int caseNumber = 1; caseNumber <= c; caseNumber++) { System.out.print("Case #" + caseNumber + ":"); int n = input.nextInt(); int[] arrayHigh = new int[n]; for (int buildingNumber = 0; buildingNumber < n; buildingNumber++) { arrayHigh[buildingNumber] = input.nextInt(); } for (int i = 0; i < n; i++) { int answer = -1; for (int j = i+1; j < n; j++) { if (arrayHigh[i] < arrayHigh[j]) { answer = arrayHigh[j]; break; } } System.out.print(" " + answer); } System.out.println(); } } catch (Exception e) { System.out.println(e); } } }