乘坐火车
题目描述:
你要坐火车了,火车的座位可看作一条直线,有的座有人,有的没人,你带k个人去,求k的最大值。
输入格式
第一行一个整数n
后面n行一行一个数a[i]表示这个座有没有人
输出格式
一行一个整数k
输入输出样例1
输入: 输出:
10 4
1
0
0
0
0
1
0
1
0
1
数据范围
1<=n<=1e7,保证a[i]只为1或0
#include<bits/stdc++.h>
using namespace std;
const int N=1e7+10;
bool a[N];//定义座位数组
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
int ans=0;
int cnt=0;
for(int i=1;i<=n;i++)//最长平台
if(a[i]==0)
cnt++;
else
ans=max(ans,cnt),cnt=0;
ans=max(ans,cnt);//被忘了最后还要再取一次max
cout<<ans<<endl;
return 0;
}