結果
問題 |
No.1715 Dinner 2
|
ユーザー |
|
提出日時 | 2021-10-22 23:31:56 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,262 bytes |
コンパイル時間 | 1,573 ms |
コンパイル使用メモリ | 169,532 KB |
実行使用メモリ | 11,392 KB |
最終ジャッジ日時 | 2024-09-23 08:07:35 |
合計ジャッジ時間 | 17,657 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | WA * 35 RE * 3 |
コンパイルメッセージ
main.cpp: In function 'int main()': main.cpp:32:20: warning: 'temp_num' may be used uninitialized [-Wmaybe-uninitialized] 32 | dp[0][temp_num]=temp_min; | ~~~~~~~~~~~~~~~^~~~~~~~~ main.cpp:23:9: note: 'temp_num' was declared here 23 | int temp_num; | ^~~~~~~~
ソースコード
#include <bits/stdc++.h> using namespace std; int main(void){ // Your code here! int N,D; cin>>N>>D; vector<int>P(N); vector<int>Q(N); long long dp[100010][N]; for(int i=0;i<N;i++){ cin>>P.at(i)>>Q.at(i); } int temp_min=0-P[0]; int temp_num; for(int i=0;i<N;i++){ if(temp_min<0-P[i]){ temp_min=0-P[i]; temp_num=i; } } dp[0][temp_num]=temp_min; for(int i=0;i<D;i++){ for (int j = 0; j < N; ++j) { for (int k = 0; k< N; ++k) { if (j == k) continue; dp[i+1][k]=min(dp[i+1][k],dp[i][j]+Q[j]-P[k]); // dp[i][j]-P[k] // dp[i+1][k]= // dp[i+1][k]=min(dp[i+1][k],min(dp[i][j]-P[k],dp[i][j]-P[k]+Q[k])); // dp[i+1][k]=min(dp[i+1][k],min(dp[i][j]-P[k],dp[i][j]-P[k]+Q[k])); // cerr<<"dp:"<<i<<" "<<dp[i+1][k]<<endl; } } } long long ans=100000; for(int i=0;i<N;i++){ ans=min(ans,dp[N-1][i]); } cout<<ans<<endl; }