Probabilities.


Submit solution

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

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

Si sigue estos tres pasos:

  • 1: Eliges un número entero aleatorio 1 \leq C \leq N,
  • 2: Eliges un número entero aleatorio 1 \leq B \leq C,
  • 3: Eliges un número entero aleatorio 1 \leq A \leq B;

Calcule la probabilidad de que los números A, B y C sean iguales. Es posible demostrar que la probabilidad es un número de la forma \dfrac{P}{Q}, donde P y Q son enteros y Q \neq 0, imprima P * Q^{-1} módulo 1234567891.

Restricciones

1 \leq N \leq 10^6


Entrada

La única línea de entrada contiene un entero N.

Salida

La salida contiene una línea con la respuesta al problema planteado.

Ejemplo de Entrada

1

Ejemplo de Salida

1

Comments


  • 1
    Aicama  commented on Sept. 22, 2024, 7:51 p.m.

    es un problema de aritmetica modular?


    • 2
      karellgz  commented on Sept. 22, 2024, 8:36 p.m.

      Es más probabilidad que aritmética modular, pero sí.


      • 1
        Aicama  commented on Sept. 22, 2024, 9:08 p.m.

        puedes ayudarme exlicandome que esperan exactamente en la salida? osea P/Q quiere decir casos favorables sobre total de casos en el caso de n=2 tenemos los casos totales:

        1. 2 2 2
        2. 2 2 1
        3. 2 1 1
        4. 1 1 1

        y casos favorables solo 2:

        1. 2 2 2
        2. 1 1 1

        osea que P = 2 y q = 4 la inversa de q = 1/4 por lo que 2*1/4 es 2/4 que al calcularlo la salida seria 0,5 un 50% de probabilidades la salida esperada es 0.5?


        Edit : al final si se consiguio gracias a todos por responder :D


        • 0
          karellgz  commented on Sept. 24, 2024, 9:41 p.m.

          Creo que es un poco tarde, pero por si alguien más esta confuso sobre como dar la solución:

          Decir "dividir" P por Q realmente significa multiplicar P por un valor especial que llamaremos Q^{-1}, dicho valor debe cumplir que: Q\cdot Q^{-1} = 1, es fácil ver que en números reales el valor Q^{-1} = \frac {1} {Q}

          Pero cuando trabajamos módulo m (o más correctamente, en el anillo Z_m) pues no es exactamente el mismo valor que en números reales.

          Para calcular su valor nos basamos en el Teorema de Euler:

          \displaystyle 
Q^{\varphi(m)-1} \equiv Q^{-1} (\bmod m)

          Donde \varphi(m) es la función Phi de Euler. En este problema, como m=1234567891 es primo, \varphi(m) = m-1 = 1234567890

          Resumiendo: para hallar Q^{-1} solo quedaría calcular Q^{1234567889}, que se puede hacer fácilmente con exponenciación binaria.

          Otra vía para calcularlo sería con el algoritmo extendido de Euclides, y hallar x de la ecuación diofántica: Qx + My = 1

          Otra nota: el inverso al igual que en \mathbb R puede no existir (p.ej 0 no tiene inverso multiplicativo), de hecho solamente existe cuando m y Q son primos relativos (el número y el módulo son coprimos)

          Slds.


        • 3
          TheRacistK  commented on Sept. 23, 2024, 2:16 a.m.

          no te conviene eso, en su lugar hallas el inverso modular y multiplicas por el


  • 4
    karellgz  commented on Nov. 10, 2023, 12:04 a.m. edit 2

    .


  • 5
    Daniel_cm  commented on April 3, 2023, 3:44 a.m.

    ta imposible :(