1417: 寻找和谐的生产批次

内存限制:128 MB 时间限制:1.000 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:50 通过:8 通过率:16%

题目描述

在一个高科技制造工厂里,精密传感器正在监控一条自动化生产线。每生产一个零件,传感器就会记录一个整数读数 nums[i]。工厂的质量控制团队发现了一个有趣的现象:

  • 当传感器的读数为 奇数 时,表示零件经历了一个特殊的、但通常是良性的“微调”过程。

  • 当传感器的读数为 偶数 时,表示零件遵循了标准生产流程。

经过大量数据分析,工程师们确定,一个生产批次(即生产线上连续生产的一段零件)如果经历了恰好 这种“微调”过程(即包含恰好 k 个奇数读数),那么这个批次的整体性能和稳定性会达到一种理想的“和谐状态”。这种状态下的批次,其产品往往具有最佳的综合品质。

工厂经理现在非常关心生产过程的稳定性,他想知道在过去的生产记录 nums 中,有多少个连续的生产批次达到了这种理想的“和谐状态”。
作为数据分析团队的一员,你需要分析给定的历史生产记录(整数数组 nums)和目标“微调”次数 k。请找出并返回记录中有多少个不同的、连续的生产批次(子数组)是“和谐”的(即包含恰好 k 个奇数读数)。

给定一个整数数组 nums 和一个整数 k。如果某个 连续子数组 中恰好有 k 个奇数数字,我们就认为这个子数组是和谐批次

请返回这个数组中 和谐批次 的数目。

输入格式

输入为两行,第一行为两个整数 n 和 k。
第二行为一个长度为 n 的数组 nums。

输出格式

一个整数,表示在生产记录 nums 中,总共存在多少个和谐批次

输入样例 复制

5 3
1 1 2 1 1

输出样例 复制

2

数据范围与提示

包含 3 个奇数的子数组是 [1,1,2,1] 和 [1,2,1,1] 。
1 <= n <= 50000
1 <= nums[i] <= 10^5
1 <= k <= nums.length