P1567 统计天数 统计天数 题目描述 炎热的夏日,KC非常的不爽。他宁可忍受北极的寒冷,也不愿忍受厦门的夏天。最近,他开始研究天气的变化。他希望用研究的结果预测未来的天气。 经历千辛万苦,他收集了连续N(1<=N<=10^7)天的最高气温数据。 现在,他想知道最高气温一直上升的最长连续天数。 输入输出格式 输入格式: *1行:一个整数N。1<=N<=10^7 *2行:N个空格隔开的整

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int i, N, n, m;
    int temp[10000000]; //数组要开足够大,不然(..>^^>..)
    scanf("%d", &N);
    for (i = 0; i < N; i++)
    {
        scanf("%d", &temp[i]);
    }
    n = 1;
    m = 0;
/*有两种输入情况:一、输入连续型数据 (1 2 3 4 5 6){不过这种情况与题目无关...}
                二、输入非连续型 (1 2 3 2 4 5 6)*/
    for (i = 0; i < N-1; i++)   //循环遍历
    {
        if (temp[i] < temp[i+1])    //如果温度在持续上升,则n++计数
        {
            n++;    //统计连续气温上升天数
    /*对待第一种情况输入数据(1 2 3 4 5 6)做的判断*/
            if (n > m)  //比较当前最高气温连续天数和历史气温连续天数,如果前者大则将n赋值给m  
            {
                m = n;
            }
        }
        else    //如果降温了(连续升温被打断了)
        {
        /*对待第二种情况输入数据(1 2 3 2 4 5 6)做的判断*/
            if (n > m)  //比较当前最高气温连续天数和历史气温连续天数,如果前者大则将n赋值给m
            {
                m = n;
            }
            n = 1;  //计数器n清零
        }

    }
    printf("%d", m);
    return 0;
}

posted @ 2018-10-30 22:17  崔杯杯  阅读(2253)  评论(0编辑  收藏  举报