█████████ ████ ███░░░░░███ ░░███ ███ ░░░ ██████ ███████ ██████ ██████ ░███ ███░░███ ███░░███ ███░░███ ███░░███ ░███ ░███ ░███░███ ░███ ░███████ ░███ ░███ ░░███ ███░███ ░███░███ ░███ ░███░░░ ░███ ░███ ░░█████████ ░░██████ ░░████████░░██████ ░░██████ ░░░░░░░░░ ░░░░░░ ░░░░░░░░ ░░░░░░ ░░░░░░

Envío 7139

Problema 0xd6 - Camino más corto de la Tortuga en un arreglo circular

  • Autor: dperezne
  • Fecha: 2023-09-20 23:01:26 UTC (Hace 8 meses)
Caso # Resultado Tiempo Memoria
#1
Correcto
0.096 s 13 KBi
#2
Correcto
0.102 s 13 KBi
#3
Correcto
0.096 s 13 KBi
#4
Correcto
0.094 s 13 KBi
#5
Correcto
0.095 s 13 KBi
#6
Correcto
0.098 s 13 KBi
#7
Correcto
0.096 s 13 KBi
#8
Correcto
0.099 s 13 KBi
#9
Correcto
0.086 s 13 KBi
#10
Correcto
0.103 s 13 KBi
#11
Correcto
0.109 s 13 KBi
#12
Correcto
0.092 s 13 KBi
#13
Correcto
0.101 s 13 KBi
#14
Correcto
0.107 s 13 KBi
#15
Correcto
0.096 s 13 KBi
#16
Correcto
0.098 s 13 KBi
#17
Correcto
0.097 s 13 KBi
#18
Correcto
0.097 s 13 KBi
#19
Correcto
0.094 s 13 KBi
#20
Correcto
0.104 s 13 KBi
#21
Correcto
0.104 s 13 KBi
#22
Correcto
0.109 s 13 KBi
#23
Correcto
0.103 s 13 KBi
#24
Correcto
0.101 s 15 KBi
#25
Correcto
0.086 s 13 KBi
#26
Correcto
0.092 s 13 KBi
#27
Correcto
0.094 s 13 KBi
#28
Correcto
0.103 s 13 KBi
#29
Correcto
0.101 s 13 KBi
#30
Correcto
0.094 s 13 KBi
#31
Correcto
0.107 s 13 KBi
#32
Correcto
0.095 s 13 KBi
#33
Correcto
0.113 s 13 KBi
#34
Correcto
0.094 s 13 KBi
#35
Correcto
0.087 s 13 KBi
#36
Correcto
0.096 s 13 KBi
Puntos totales: 100 / 100

Código

import java.util.Scanner;

public class Main{

    public static int minMovimientos(int N, int X, int Y) {
        // Calcular la distancia en sentido horario
        int horario = (Y - X + N) % N;
        
        // Calcular la distancia en sentido antihorario
        int antihorario = (X - Y + N) % N;

        // El mínimo de las dos distancias es el número de movimientos necesarios
        return Math.min(horario, antihorario);
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // Leer N, X e Y de la entrada
        int N = scanner.nextInt();
        int X = scanner.nextInt();
        int Y = scanner.nextInt();

        // Calcular el mínimo número de movimientos
        int movimientos = minMovimientos(N, X, Y);

        // Imprimir el resultado
        System.out.println(movimientos);
    }
}