1 条题解
-
0118爱好者 (mengqingyu) LV 10 @ 2024-9-8 20:02:23
AC代码:
#include<bits/stdc++.h> using namespace std; int n,a[1000],b[100005],k,t,x,maxx=-1,sum; int main() { cin>>n>>k; for(int i=1;i<=n;i++) { cin>>a[i]; if(a[i]==0) { b[i]=b[i-1]+1; } else { b[i]=b[i-1]; } } for(int i=1,j=1;j<=n;) { if(b[j]-b[i-1]<=k) { sum=j-i+1; if(sum>maxx) { maxx=sum; } j++; } else { i++; } } cout<<maxx; }
然后,
你错了,真正的AC代码在这:#include<bits/stdc++.h> using namespace std; int n,a[100005],b[100005],k,t,x,maxx=-1,sum; int main() { cin>>n>>k; for(int i=1;i<=n;i++) { cin>>a[i]; if(a[i]==0) { b[i]=b[i-1]+1; } else { b[i]=b[i-1]; } } for(int i=1,j=1;j<=n;) { if(b[j]-b[i-1]<=k) { sum=j-i+1; if(sum>maxx) { maxx=sum; } j++; } else { i++; } } cout<<maxx; }
- 1
信息
- ID
- 2623
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 97
- 已通过
- 29
- 上传者