Problem A:队伍(team)

来源:互联网 发布:python 正则匹配 开始 编辑:程序博客网 时间:2024/06/10 06:08

Problem A:队伍(team)

Time Limit:1000MS Memory Limit:65536K
Total Submit:46 Accepted:18

Description

问题描述:
蛋糕分好了,小朋友排着队去领蛋糕。铭铭想从 N 人的队伍中选出 K 位小朋友帮忙分发蛋糕。但铭铭选人 的方法有点特别,他想从队伍中选连续的 K 个小朋友, 而且必须是男比女多,你知道铭铭有多少种选择吗?
输入格式:
第一行, 两个整数 N, 代表队伍中有 N [N:0~1000000] 个小朋友,铭铭想选 K[K小于N]个人。 第二行:有 N 个 0 或 1[0 代表男,1 代表女],每个数用空格隔开。
输出格式:
输出一个整数。代表铭铭可以有多少种选择方案。
输入样例:
10
3
0 1 1 0 0 1 0 1 0 1
输出样例:
4

#include<cstdio>using namespace std;int a[1000010];int main(){int n,k,s=0,l=1,h,nan=0,nv=0;scanf("%d%d",&n,&k);h=k;for(int i=1;i<=n;i++) scanf("%d",&a[i]);for(int i=1;i<=k;i++) {if(a[i]==1) nv++;else nan++;}for(int i=1;i<=n-k+1;i++){if(nan>nv) s++;h++;if(a[h]==1) nv++;else nan++;if(a[l]==1) nv--;else nan--;l++;} printf("%d",s);return 0;}


原创粉丝点击