Caso # | Resultado | Tiempo | Memoria |
---|---|---|---|
#1 |
Correcto
|
0.032 s | 6 KBi |
#2 |
Correcto
|
0.058 s | 3 KBi |
#3 |
Correcto
|
0.014 s | 3 KBi |
#4 |
Correcto
|
0.008 s | 3 KBi |
#5 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
#6 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
#7 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
#8 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
#9 |
Tiempo límite excedido
|
1.585 s | 3 KBi |
#10 |
Tiempo límite excedido
|
1.52 s | 3 KBi |
#11 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
#12 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
#13 |
Tiempo límite excedido
|
1.537 s | 6 KBi |
#14 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
#15 |
Tiempo límite excedido
|
1.6 s | 3 KBi |
N = int(input()) monedas = list(map(int, input().split(' '))) M = int(input()) for i in range(M): cantidad = int(input()) tbl = [0] * (cantidad + 1) # cada espacio representa una cantidad de monedas hasta la cantidad que buscamos, que es la ultima tbl[0] = 1 # si hay 0 monedas, hay 1 forma de distribuirlas: 0 for i in range(len(monedas)): for j in range(len(tbl)): if monedas[i] <= j: tbl[j] = (tbl[j] + tbl[j - monedas[i]]) % 1000000007 print(tbl[cantidad])