結果
問題 | No.250 atetubouのzetubou |
ユーザー | kroton |
提出日時 | 2015-08-14 08:37:55 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 69 ms / 5,000 ms |
コード長 | 625 bytes |
コンパイル時間 | 458 ms |
コンパイル使用メモリ | 55,320 KB |
実行使用メモリ | 21,160 KB |
最終ジャッジ日時 | 2024-07-18 09:17:56 |
合計ジャッジ時間 | 2,241 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 20 |
ソースコード
#include <iostream> #include <cstring> using namespace std; typedef long long ll; const ll LIM = 1000000000000000ll; ll dp[1501][1501]; ll solve(int X, int D){ if(D == 1)return 1; if(dp[X][D] != -1)return dp[X][D]; ll res = solve(X, D - 1); if(X > 0){ res += solve(X - 1, D); } if(res > LIM){ res = LIM + 1; } return dp[X][D] = res; } int main(){ memset(dp, -1, sizeof(dp)); int Q; cin >> Q; for(int q=0;q<Q;q++){ int X, D; ll T; cin >> D >> X >> T; if(solve(X, D) <= T){ cout << "AC" << endl; } else { cout << "ZETUBOU" << endl; } } return 0; }