結果
問題 |
No.2155 みちらcolor
|
ユーザー |
![]() |
提出日時 | 2022-12-10 00:44:54 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 803 bytes |
コンパイル時間 | 4,056 ms |
コンパイル使用メモリ | 229,184 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-14 23:20:42 |
合計ジャッジ時間 | 5,623 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 64 |
ソースコード
#include <bits/stdc++.h> #include <atcoder/all> using namespace atcoder; using mint = modint1000000007; using namespace std; #define rep1(a) for(int z = 0; z < a; z++) #define rep2(i, a) for(int i = 0; i < a; i++) #define rep3(i, a, b) for(int i = a; i < b; i++) #define rep4(i, a, b, c) for(int i = a; i < b; i += c) #define overload4(a, b, c, d, e, ...) e #define rep(...) overload4(__VA_ARGS__, rep4, rep3, rep2, rep1)(__VA_ARGS__) const int MOD=1e9+7; const int64_t INF = 1LL<<60; void YN(bool x){ if(x) cout<<"Yes"; else cout<<"No"; } int main(){ int N,M,L;cin>>N>>M>>L; L--,M--; vector<vector<int>> dp(N+1,vector<int>(1000,0)); dp[0][L]++; rep(i,N){ int A;cin>>A; A--; rep(j,1000){ dp[i+1][j]+=dp[i][j]; dp[i+1][(A+j)/2]+=dp[i][j]; } } YN(dp[N][M]); }