結果
問題 |
No.1457 ツブ消ししとるなHard
|
ユーザー |
![]() |
提出日時 | 2021-04-13 17:57:57 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 233 ms / 2,000 ms |
コード長 | 822 bytes |
コンパイル時間 | 155 ms |
コンパイル使用メモリ | 82,132 KB |
実行使用メモリ | 113,616 KB |
最終ジャッジ日時 | 2024-06-29 22:57:32 |
合計ジャッジ時間 | 2,726 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 17 |
ソースコード
import copy n,m,x,y,z=map(int,input().split()) a=list(map(int,input().split())) L=[] L2=[] for i in range(n): if a[i]>=x: L.append(a[i]) elif a[i]>y: L2.append(a[i]) if len(L)>m: print('Handicapped') exit() n=len(L2) if len(L2)!=0: M=max(L2) else: M=0 m-=len(L) L3=[[[0]*(M*m+1) for i in range(m+1)] for j in range(n+1)] for i3 in range(n+1): for i2 in range(m+1): for i1 in range(M*m+1): if i1==0 and i2==0 and i3==0: L3[i3][i2][i1]=1 elif i3>0 and i1<L2[i3-1]: L3[i3][i2][i1]=L3[i3-1][i2][i1] elif i3>0 and i2>0 and i1>=L2[i3-1]: L3[i3][i2][i1]=L3[i3-1][i2][i1]+L3[i3-1][i2-1][i1-L2[i3-1]] else: L3[i3][i2][i1]=0 ct=0 for i2 in range(m+1): for i1 in range(1,M*m+1): if (i2+len(L))*z==i1+sum(L): ct+=L3[n][i2][i1] print(ct)