小明最近在研究股市,他拿了某只股票连续n天的股市变化数据,天数编号1到n,对于第i天,该股票的涨跌程度用一个整数啊【i】来表示。小明觉得对于某一段日期区间【li,ri】,如果这段区间内该股票总涨幅不小于K,那么这段区间就被认为是牛市区间。小明想知道这n天内,有多少个牛市区间?
输入:第一行一个整数n,k,1<=n<=5000,1=<k<=100000;第二行n个整数,第i个整数啊【i】表示第i天的涨跌程度,-2000<=a[i]<=2000;
输出:输出一个整数,表示一共有多少个牛市区间。
样例输入:
3 5
1 2 3
样例输出:
2
补充样例:
输入:
3 5
5 -1 5
输出:
3
#include<stdio.h>
#include<string.h>int main()
{int a[1000],number=0,k,N,n;//N天数int b;while(1){printf("输入知道天数:");scanf("%d",&N);printf("输入%d天的股市涨跌情况\n",N);for(int i=0;i<N;i++){scanf("%d",&a[i]);}printf("请输入K:");scanf("%d",&k);printf("%d天的股市涨跌情况:",N);for(int j=0;j<N;j++){printf(" %d ",a[j]);}printf("\n");for(int m=0;m<N;m++){b=0;for(n=m;n<N;n++){b=b+a[n];if(b>=k)number++;}}printf("牛市天数:%d\n",number);}return 0;
}
执行程序结果: