题目链接:https://ac.nowcoder.com/acm/contest/332/D
题目描述:
小B喜欢美食。
现在有n个美食排成一排摆在小B的面前,依次编号为1..n,编号为i的食物大小为 a[i] ,即足够小B吃 a[i] 口。
小B每次会吃两口,这两口要么是编号相同的美食,要么是编号之差的绝对值为1的美食。
小B想知道,她最多能吃几次?
思路:从前往后加起来,遇到0或结束时,ans=sum/2;
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
long long t,ans=0,sum=0;
cin>>n;
while(n--) cin>>t,t==0?ans+=sum/2,sum=0:sum+=t;
cout<<ans+sum/2<<endl;
return 0;
}