记录编号 |
341554 |
评测结果 |
AAAAAAAAAA |
题目名称 |
买票 |
最终得分 |
100 |
用户昵称 |
king'back |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.213 s |
提交时间 |
2016-11-07 18:57:35 |
内存使用 |
1.24 MiB |
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <climits>
#include <algorithm>
using namespace std;
const int maxn=1000000+10;
int n,m,a[maxn],l,ans,mon;
int read();
int MAIN()
{
freopen ("tickets.in","r",stdin);
freopen ("tickets.out","w",stdout);
n=read(); m=read();l=1;
for (int i=1; i<=n; i++)
{
a[i]=read();
if (mon+a[i]<=m)
mon+=a[i];
else
{
if (i-l>ans) ans=i-l;
mon+=a[i];
while (mon>m)
{
mon-=a[l]; l++;
}
}
}
if (mon<=m && n-l>ans)
ans=n-l;
cout<<ans<<endl;
return 0;
}
int enter=MAIN();
int main(){;}
int read()
{
char ch=' ';
int x=0,s=1;
while (ch<'0' || ch>'9')
{
ch=getchar();
if (ch=='-') s=-1;
}
while (ch>='0' && ch<='9')
{
x=x*10+ch-'0';
ch=getchar();
}
return x*s;
}