Ir al contenido (saltar navegación)

El extraño caso de la multiplicación

Tiempo máximo: 2,000-3,000 sMemoria máxima: 4096 KiB
...

Si no admitimos números negativos, cuando sumamos dos números ab, el resultado es siempre mayor o igual que ambos sumandos (será igual si alguno de ellos es 0).

Con la multiplicación, sin embargo, no ocurre lo mismo. Dependiendo de los valores que se multipliquen, el resultado no tiene por qué ser mayor o igual que ellos. De hecho, pueden ocurrir las tres cosas siguientes:

  • El resultado es mayor o igual que los dos multiplicandos. Pasa por ejemplo si hacemos 3×5.
  • El resultado se queda entre ambos multiplicandos. Por ejemplo al hacer 0.2×10 tenemos como resultado 2, que está entre ambos valores iniciales (sin coincidir con ninguno de los dos).
  • El resultado es menor o igual que ambos valores. Por ejemplo en 0.9×0.8, que da 0.72.

Dado un conjunto de números, ¿en cuántas parejas de números se tiene que al multiplicar ambos valores el resultado no queda entre ambos?

Entrada

La entrada está formada por distintos casos de prueba, cada uno de ellos ocupando dos líneas.

Cada caso de prueba comienza con una línea con el número de elementos N que se deben considerar (2 ≤ N ≤ 200.000).

La siguiente línea contiene N números entre 0 y 1.000 con como mucho tres decimales.

La entrada termina con un 0 que no debe ser procesado.

Salida

Por cada caso de prueba se escribirá una única línea con la cantidad de parejas de valores en los que el resultado de multiplicar ambos es o bien mayor o igual o bien menor o igual a ambos.

Entrada de ejemplo

4
4 5 6 7
4
4 0.1 5 0.1
8
0 1 4 5 6 0.2 0.3 1
0

Salida de ejemplo

6
2
22