結果
問題 |
No.1 道のショートカット
|
ユーザー |
![]() |
提出日時 | 2015-09-20 07:29:30 |
言語 | C90 (gcc 12.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,583 bytes |
コンパイル時間 | 123 ms |
コンパイル使用メモリ | 21,376 KB |
実行使用メモリ | 8,356 KB |
最終ジャッジ日時 | 2024-07-08 04:13:30 |
合計ジャッジ時間 | 9,836 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 19 TLE * 1 -- * 20 |
コンパイルメッセージ
main.c: In function ‘main’: main.c:61:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 61 | scanf("%d", &gsizen); | ^~~~~~~~~~~~~~~~~~~~ main.c:62:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 62 | scanf("%d", &gcost); | ^~~~~~~~~~~~~~~~~~~ main.c:63:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 63 | scanf("%d", &gsizev); | ^~~~~~~~~~~~~~~~~~~~ main.c:65:13: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 65 | scanf("%d", &date[i].s); | ^~~~~~~~~~~~~~~~~~~~~~~ main.c:68:13: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 68 | scanf("%d", &date[i].t); | ^~~~~~~~~~~~~~~~~~~~~~~ main.c:71:13: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 71 | scanf("%d", &date[i].y); | ^~~~~~~~~~~~~~~~~~~~~~~ main.c:74:13: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 74 | scanf("%d", &date[i].m); | ^~~~~~~~~~~~~~~~~~~~~~~
ソースコード
#include<stdio.h> #define N 50 #define V 1500 struct DATE{ int s, t, y, m; }date[V]; struct NODE{ struct DATE *dv[V]; int vn; }node[N]; int gcost, gsizen, gsizev, gmin = -1; void createtree(void) { int i, j; for(i = 0; i < gsizev; i++){ j = date[i].s; node[j].dv[node[j].vn] = &date[i]; node[j].vn++; } return; } int trece1(int i, int cost, int time) { int j, ans; if(gsizen == i){ // printf("trece1 %d\n", time); if(gmin == -1 || time < gmin){ gmin = time; } return(gmin); } for(j = 0; j < node[i].vn; j++){ if(cost+node[i].dv[j]->y <= gcost){ ans = trece1(node[i].dv[j]->t, cost+node[i].dv[j]->y, time+node[i].dv[j]->m); } } return(gmin); } int trece(void) { trece1(1, 0, 0); return(gmin); } int main(int argc, const char * argv[]) { int i; // insert code here... scanf("%d", &gsizen); scanf("%d", &gcost); scanf("%d", &gsizev); for(i = 0; i < gsizev; i++){ scanf("%d", &date[i].s); } for(i = 0; i < gsizev; i++){ scanf("%d", &date[i].t); } for(i = 0; i < gsizev; i++){ scanf("%d", &date[i].y); } for(i = 0; i < gsizev; i++){ scanf("%d", &date[i].m); } // for(i = 0; i < gsizev; i++){ // printf("%d %d %d %d\n", date[i].s, date[i].t, date[i].y, date[i].m); // } createtree(); printf("%d\n", trece()); return 0; }