結果
| 問題 |
No.45 回転寿司
|
| ユーザー |
Hissha_
|
| 提出日時 | 2018-03-30 09:37:39 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
MLE
|
| 実行時間 | - |
| コード長 | 798 bytes |
| コンパイル時間 | 654 ms |
| コンパイル使用メモリ | 28,800 KB |
| 実行使用メモリ | 813,184 KB |
| 最終ジャッジ日時 | 2024-06-26 00:21:02 |
| 合計ジャッジ時間 | 3,748 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | -- * 4 |
| other | MLE * 1 -- * 29 |
ソースコード
#include <stdio.h>
#include <stdlib.h>
int maxv(int n, int v[]){
int i, maxa, maxb;
// for(i=0;i<n-1;i++) printf("%d ", *(v+i));
if(n==0) return v[0];
if(n==1) return v[1]>v[0]?v[1]:v[0];
maxa=maxv(n-3,v)+v[n-1];
maxb=maxv(n-2,v);
return maxa>maxb?maxa:maxb;
}
int main(void) {
// your code goes here
int i, n;
int *v;
scanf("%d",&n);
v = (int *)malloc(sizeof(int) * n);
if(v==NULL) exit(0);
for(i=0;i<n-1;i++){
scanf("%d ",v+i);
}
scanf("%d",v+n-1);
printf("%d",maxv(n,v));
return 0;
}
Hissha_