Doblando una Cuerda


Submit solution

Points: 100 (partial)
Time limit: 1.0s
Memory limit: 64M

Authors:
Problem type
Allowed languages
C, C++, Python

Descripción

El Granjero Juan (GJ) tiene una cuerda larga de longitud L (1 \le L \le 10 000) que usa para varias tareas en la granja. La cuerda tiene N nudos en varias ubicaciones distintas (2 \le N \le 100), incluyendo un nudo en cada uno de sus dos extremos.

GJ se da cuenta que hay ciertas ubicaciones en las cuales él puede doblar la cuerda sobre si misma de tal manera que los nudos opuestos se alinean exactamente uno con otro:

Tarea

Por favor, ayude a GJ a contar el número de puntos de doblado que tienen esta propiedad. Se permite doblar exactamente en un nudo, excepto en los puntos extremos, y todos los nudos en el lado más largo no son un problema (esto es, se necesita únicamente que los nudos se alineen donde los dos pedazos de la cuerda coinciden al hacer el doblez). GJ únicamente toma en cuenta hacer un solo doblez cada vez, Afortunadamente, él nunca hace varios dobleces.

Entrada

• Línea 1: Dos enteros separados por un espacio, N y L.

• Líneas 2...1+N: Cada línea contiene un entero en el rango 0...L especificando la ubicación de un solo nudo. Dos de estas líneas contendrán siempre 0 y L.

Ejemplo Entrada

5 10
0
10
6
2
4

Detalles de la Entrada

La cuerda tiene longitud L = 10, y hay 5 nudos en las posiciones 0, 2, 4, 6 y 10.

Salida

• Línea 1: El número de posiciones válidas de doblez.

Ejemplo Salida

4

Detalles de la Salida

Las posiciones válidas de doblez son 1, 2, 3 y 8.


Comments


  • 0
    LeandroGamer  commented on March 31, 2024, 8:49 p.m.

    El 5 también es una posición válida de doblez?


    • 0
      lrivero  commented on April 1, 2024, 1:03 p.m.

      Es verdad