【题目背景】
fy万万没有想到北京会这么冷,每天穿着单薄的外套被寒风侵蚀,瑟瑟发抖中敲击键盘。生活在成都的他未曾料到10月刚刚过去北京就开始降温...无奈的他只好出一道题来表达自己的感慨。
【题目描述】
给出连续n天的温度,求出一个最长的时间段,在这一段时间中一直降温(温度相同也算)。
【输入格式】
第一行,一个正整数n;
第二行,n个整数;
【输出格式】
两个整数,l<=r。
表示在从第l天和第r天之间一直降温。若有多个答案,输出l最小的。
【数据范围】
1<=n<=1000000
-20<=温度<=+20
#include<stdio.h>
int main(void){
int n,i,cnt=0,temp=21,l=1,r=1,max=0,L=0,R=0;
char tem[1000000];
scanf("%d",&n);
for (i=0;i<n;i++){
scanf("%d",&tem[i]);
}
for(i=0;i<n;i++){
if(tem[i]<=temp){
cnt+=1;
r=i+1;
temp=tem[i];
}
else{
if(cnt>max) {
max=cnt;
L=l;
R=r;
}
l=i+1;
r=i+2;
cnt=1;
temp=tem[i];
}
}
if(cnt>max) {
max=cnt;
L=l;
R=r;
}
if(L==0) printf("1 %d\n",n);
else printf("%d %d\n",L,R);
}