小明最近在研究股市,他拿了某只股票连续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;
}
执行程序结果: