結果
| 問題 |
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;
}