結果
問題 | No.1111 コード進行 |
ユーザー |
![]() |
提出日時 | 2020-07-10 23:11:14 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 830 bytes |
コンパイル時間 | 2,376 ms |
コンパイル使用メモリ | 196,704 KB |
最終ジャッジ日時 | 2025-01-11 19:12:03 |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 46 WA * 2 |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:42:13: warning: ‘ans’ may be used uninitialized [-Wmaybe-uninitialized] 42 | ans=(ans+dp[n][j][K])%MOD; | ~~~~^~~~~~~~~~~~~ main.cpp:40:6: note: ‘ans’ was declared here 40 | ll ans; | ^~~
ソースコード
#define rep(i, n) for (int i = 0; i < (int)(n); i++)#define ALL(v) v.begin(), v.end()typedef long long ll;#include <bits/stdc++.h>using namespace std;const ll MOD=1e9+7;int main(){ll n,m,K;cin>>n>>m>>K;ll dp[n+1][301][K+1];rep(i,n+1){rep(j,301){rep(k,K+1) dp[i][j][k]=0;}}vector<pair<ll,ll>> A[301];ll p,q,c;rep(i,m){cin>>p>>q>>c;A[p].push_back({q,c});dp[2][q][c]++;}for(int i=2;i<=n-1;i++){for(int j=1;j<=300;j++){for(int k=0;k<=K;k++){for(auto x:A[j]){if(k+x.second>K) continue;dp[i+1][x.first][k+x.second]=(dp[i+1][x.first][k+x.second]+dp[i][j][k])%MOD;}}}}ll ans;for(int j=1;j<=300;j++){ans=(ans+dp[n][j][K])%MOD;}cout<<ans<<endl;return 0;}