結果
| 問題 |
No.45 回転寿司
|
| ユーザー |
|
| 提出日時 | 2016-09-27 07:41:59 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,045 bytes |
| コンパイル時間 | 598 ms |
| コンパイル使用メモリ | 60,232 KB |
| 実行使用メモリ | 6,820 KB |
| 最終ジャッジ日時 | 2024-11-24 17:28:40 |
| 合計ジャッジ時間 | 1,658 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 3 WA * 27 |
ソースコード
#include <iostream>
#include <vector>
using namespace std;
int main(){
int N,V; cin>>N;
vector<int> v;
for(int i=0;i<N;++i){
cin>>V;
v.push_back(V);
}
int pos=0;
int sum=0;
int vs=v.size();
while(1){
if(pos<=vs-1-3){
if(v[pos]>=v[pos+1]){
sum+=v[pos];
pos+=2;
} else {
if((v[pos]+v[pos+2]>=v[pos+1]+v[pos+3]) || (v[pos]+v[pos+3]>=v[pos+1]+v[pos+3])){
sum+=v[pos];
pos+=2;
} else {
sum+=v[pos+1];
pos+=3;
}
}
} else if(pos==vs-1-2){
if(v[pos]>=v[pos+1]){
sum+=v[pos];
sum+=v[pos+2];
} else {
if(v[pos]+v[pos+2]>=v[pos+1]){
sum+=v[pos];
sum+=v[pos+2];
} else {
sum+=v[pos+1];
}
}
break;
} else if(pos==vs-1-1){
if(v[pos]>=v[pos+1]){
sum+=v[pos];
} else {
sum+=v[pos+1];
}
break;
} else if(pos==vs-1){
sum+=v[pos];
break;
}
}
cout<<sum<<endl;
return 0;
}