結果
問題 | No.1 道のショートカット |
ユーザー |
|
提出日時 | 2015-07-15 18:39:39 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 3 ms / 5,000 ms |
コード長 | 1,470 bytes |
コンパイル時間 | 439 ms |
コンパイル使用メモリ | 53,856 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-20 16:15:56 |
合計ジャッジ時間 | 1,483 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 40 |
ソースコード
//// //// main.cpp //// Q17 //// //// Created by AkihiroKOBAYASHI on 7/15/15. //// Copyright (c) 2015 Akhr5884. All rights reserved. //// #include <iostream> int n, c, v; int s[1600],t[1600],y[1600],m[1600]; int temp[51][51]; int totaltime= -1; void search(int start, int money, int time) { int count; if(totaltime == -1 || time < totaltime) { if(start == n) { if(totaltime == -1) { totaltime = time; } else { totaltime = time; } } else { for(count = 0; count < v; count++) { if(s[count] == start && money - y[count] >= 0) { search(t[count], money - y[count], time + m[count]); } } } } return; } int main(int argc, const char * argv[]) { std::cin >> n >> c >> v; int count, countA; for(count = 0; count < v; count++) { std::cin >> s[count]; } for(count = 0; count < v; count++) { std::cin >> t[count]; } for(count = 0; count < v; count++) { std::cin >> y[count]; } for(count = 0; count < v; count++) { std::cin >> m[count]; } for(count = 0; count < 51; count++) { for(countA = 0; countA < 51; countA++) { temp[count][countA] = -1; } } search(1, c, 0); std::cout << totaltime << "\n"; return 0; }