Fork me on GitHub

CSP201609-1:最大波动

引言:CSP(http://www.cspro.org/lead/application/ccf/login.jsp)是由中国计算机学会(CCF)发起的"计算机职业资格认证"考试,针对计算机软件开发、软件测试、信息管理等领域的专业人士进行能力认证。认证对象是从事或将要从事IT领域专业技术与技术管理人员,以及高校招考研究生的复试对象。

 

  • 问题描述

小明正在利用股票的波动程度来研究股票。小明拿到了一只股票每天收盘时的价格,他想知道,这只股票连续几天的最大波动值是多少,即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少。

  • 输入格式

输入的第一行包含了一个整数n,表示小明拿到的收盘价格的连续天数。

第二行包含n个正整数,依次表示每天的收盘价格。

  • 输出格式

输出一个整数,表示这只股票这n天中的最大波动值。

  • 样例输入

    6

    2 5 5 7 3 5

  • 样例输出

    4

  • 样例说明

    第四天和第五天之间的波动最大,波动值为|3-7|=4

  • 评测用例规模与约定

    对于所有评测用例,2 n 1000。股票每一天的价格为110000之间的整数。

 

  • 源代码

# include <stdio.h>

# include <stdlib.h>

# include <memory.h>

# include <math.h>

 

int main(void)

{

    int n; //个数

    int maxValue = 0;

    scanf("%d", &n);

    int *input = (int *)malloc(sizeof(int) * n);

    memset(input, 0, sizeof(int) * n);

    

    for (int i = 0; i < n; i++)

    {

        scanf("%d", input+i);

    }

    

    for (int i = 0; i < n-1; i++) //只跟后一天比较

    {

        if (abs(input[i] - input[i+1]) > maxValue)

        {

            maxValue = abs(input[i] - input[i+1]);

        }    

    }

    

    printf("%d\n", maxValue);

    

    return 0;

}

 

posted @ 2018-02-13 23:51  husterzxh  阅读(174)  评论(0编辑  收藏  举报