问题标题: 酷町堂:4557 查找子数组 思路

0
0
已解决
董宇昊
董宇昊
初级启示者
初级启示者

经验值:800

题目描述 Description

现在有一个长为m的数组A,给定一个整数n(n<m),请你编写一个程序,查找A中有多少个长度为n的子数组的和为0。

输入描述 Input Description

两行,第一行两个整数m、n
第二行m个数,表示数组A

输出描述 Output Description

一个整数,表示A中长度为n且和为0的子数组数量

样例输入 Sample Input

5 2 -1 1 -2 2 3

样例输出 Sample Output

2

数据范围及提示 Data Size & Hint

1<n<=m<=1,000,000

董宇昊在2020-06-20 18:47:14追加了内容

后面还要提醒刘英杰“诗人”

你不能发稿诗集诗坛上吗?你在酷町问答实在是太屈才了!!

本人早就不水了


0
已采纳
刘英杰
刘英杰
新手天翼
新手天翼

对于你的人身攻击,我表示不屑,但问题还是要答的

1、定义,6个整型变量m,n,h,i,j,s=0,一个整型数组a

2、输入,按照题目要求,输入m、n、数组a

3、循环,i从1到(m-n+1),循环内每次先将h赋值为0

4、内循环,j从i到(i+n-1),每次将a[i]的值累加到h上

5、内循环结束后,判断h的值是否为0,如果是,把s累加1

6、全部循环结束后,输出s的值

程序长这样

框架

{

    第一步

    第二步

    第三步

    第四步前半部分

    {

        第四步后半部分

        第五步

    }

    第六步

    return 0;

}

0
0
我要回答