結果
問題 |
No.250 atetubouのzetubou
|
ユーザー |
|
提出日時 | 2015-08-17 01:48:38 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 134 ms / 5,000 ms |
コード長 | 1,030 bytes |
コンパイル時間 | 169 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 10,880 KB |
最終ジャッジ日時 | 2024-07-18 09:56:49 |
合計ジャッジ時間 | 3,104 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 20 |
ソースコード
#coding=UTF-8 #数学的に煮詰めないと間に合わなさそうだな Q=int(input()) for idx in range(0,Q,1): mojir=input() hyo=mojir.split(' ') Depth=int(hyo[0])#1500重ループとかZETUBOUでしょ width=int(hyo[1]) Timeslimit=int(hyo[2]) #あれか、n個の箱の中に合計w個のミカン入れる話か #nHrつかうやつ (D-1+w)C(w)でいいか sisan=1 # print(list(range(Depth-1+width,Depth-1,-1))) #オーダー的にはO(QW) \sim 10^7で間に合うはず #あとはnot多倍長で頑張るということか nagasa=min(width,Depth-1) ans=True if Timeslimit==0:#ループを通らない時用 print('ZETUBOU') ans=False for idy in range(0,nagasa,1): sisan=sisan*(Depth-1+width-idy)//(idy+1)#割り算は小さい方から if sisan > Timeslimit:#単調増加のために打ち切りが使える print('ZETUBOU') ans=False break if ans: # print(sisan) print('AC')