結果
問題 |
No.45 回転寿司
|
ユーザー |
![]() |
提出日時 | 2017-09-11 00:42:32 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 697 bytes |
コンパイル時間 | 1,381 ms |
コンパイル使用メモリ | 29,440 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-12-27 17:02:26 |
合計ジャッジ時間 | 2,826 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 30 |
ソースコード
#include<stdio.h> int main (void){ int N,A[1000],ans[1000],i; scanf("%d",&N); for(i=0;i<N;i++){ scanf("%d",&A[i]); } if(N == 1){ printf("%d",A[0]); return 0; } if(N == 2){ if(A[0]<A[1]){ printf("%d",A[1]); return 0; }else{ printf("%d",A[0]); return 0; } } if(A[0]<A[1]){ ans[1] = A[1]; }else{ ans[1] = A[0]; } if(A[1]<A[0]+A[2]){ ans[2] = A[0]+A[2]; }else { ans[2] = A[1]; } if(N == 3){ printf("%d",ans[2]); return 0; } for(i=3;i<=N-1;i++){ if(ans[i-1] < ans[i-2]+A[i]){ ans[i] = ans[i-2]+A[i]; }else { ans[i] = ans[i-1]; } } printf("%d",ans[N-1]); }