Desafío relacionado con el marketing multinivel.
Un compañero quiere ser recompensado. Por lo tanto, atrajo a los Ninversores ( N>=1), cada i-ésimo inversor invirtió x[i]. Cuando una suma total excede el umbral, x[0]+x[1]+...+x[N-1] >= Tun compañero podría ser recompensado. Pero solo si se cumplen las siguientes condiciones:
- La cantidad mínima de inversores debe ser mayor que
M(M<=N) - Para al menos un número entero
k, dóndek>=Myk<=N, cualquierkinversor tiene que invertir al menosT/kcada uno;
Dado N, x[], T, Mque debe determinar si la recompensa de los pares se genera o no (resultado booleano, "sí" o "no"). El código más corto gana.
Ejemplos:
N=5; M=3; T=10000, para generar la recompensa de un compañero, debe cumplirse uno de los siguientes:
- 3 invirtieron al menos 3334 cada uno
- 4 invirtieron al menos 2500 cada uno
- los 5 invirtieron al menos 2000 cada uno
N=6; M=2; T=5000:
- 2 invirtieron al menos 2500 cada uno
- 3 invirtieron al menos 1667 cada uno
- 4 invirtieron al menos 1250 cada uno
- 5 invertidos al menos 1000 cada uno
- los 6 invirtieron al menos 834 cada uno
generalizado: para cualquier k, donde k>=My k<=N:
- cualquiera
kde losNinversores invirtió al menosT/kcada
Casos de prueba:
formato:
N, x[], T, M -> correct answer
6, [999, 999, 59, 0, 0, 0], 180, 3 -> 0
6, [0, 60, 0, 60, 60, 0], 180, 3 -> 1
6, [179, 89, 59, 44, 35, 29], 180, 3 -> 0
6, [179, 89, 59, 44, 35, 30], 180, 3 -> 1
6, [179, 89, 59, 44, 36, 29], 180, 3 -> 1
6, [179, 90, 59, 44, 35, 29], 180, 3 -> 0
6, [30, 30, 30, 30, 29, 30], 180, 3 -> 0
6, [30, 30, 30, 30, 30, 30], 180, 3 -> 1
truey un valor verdadero para false?
len(x)será más corta que la escrituraN. Eso se hace, porque para la matriz asignada dinámicamentexen C no hay unalen(x)función directa , por lo que siempre puede referirse a la longitud comoN. Para su comodidad, puede considerar todos los datos de entradaN, x[], T, Mcomo algunas constantes definidas externamente o como elementos incorporados en el lenguaje.