试题编号: 201609-1
试题名称: 最大波动
时间限制: 1.0s
内存限制: 256.0MB
问题描述:

问题描述
  小明正在利用股票的波动程度来研究股票。小明拿到了一只股票每天收盘时的价格,他想知道,这只股票连续几天的最大波动值是多少,即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少。
输入格式
  输入的第一行包含了一个整数n,表示小明拿到的收盘价格的连续天数。
  第二行包含n个正整数,依次表示每天的收盘价格。
输出格式
  输出一个整数,表示这只股票这n天中的最大波动值。
样例输入
6
2 5 5 7 3 5
样例输出
4
样例说明
  第四天和第五天之间的波动最大,波动值为|3-7|=4。
评测用例规模与约定
  对于所有评测用例,2 ≤ n ≤ 1000。股票每一天的价格为1到10000之间的整数。

问题链接:CCF201609-1 最大波动
问题简述:(略)
问题分析
  重写解题博客以及解题程序代码(参见参考链接),解题逻辑更加清晰,解题代码更加简洁,多种语言解法。
解法一:输入流
  这个问题是一个求最值问题,把输入看作流,一边读入数据,一边计算处理,是一种好的做法,可以节省存储。
解法二:数组处理
  从容易得分和习惯来说,把需要处理的数据读入到程序中的数组里,然后再进行处理,是一种更为常见的做法。要说这个习惯,其实是被教科书误导,教科书式的解法就那样。用数组,至少比较浪费存储。这里想问的是,假如n非常非常大,还能读到数组里再处理吗?

这里也给出解题的Python语言程序和Java语言程序,以上各种解法都是有的。
程序说明:(略)
参考链接
CCF201609-1 最大波动(100分)
题记:(略)

100分的C语言程序(解法一:输入流)如下:

/* CCF201609-1 最大波动 */#include <stdio.h>
#include <stdlib.h>#define MAX(x, y) ((x > y) ? (x) : (y))int main(void)
{int n, first, second, maxw = 0;scanf("%d%d", &n, &first); /* 读入n,读入第1个数据 */while(--n) {scanf("%d", &second); /* 读入第2至第n个数 */maxw = MAX(maxw, abs(second - first)); /* 求差值(波动值),取绝对值,求最大值 */first = second;}printf("%d\n", maxw); /* 输出结果 */return 0;
}

100分的C语言程序(解法二:数组处理)如下:

/* CCF201609-1 最大波动 */#include <stdio.h>
#include <stdlib.h>#define MAX(x, y) ((x > y) ? (x) : (y))#define N 1000
int a[N];int main(void)
{int n, maxw = 0, i;scanf("%d", &n); /* 读入n */for (i = 0; i < n; i++) scanf("%d", &a[i]); /* 读入n个数 */for (i = 1; i < n; i++)maxw = MAX(maxw, abs(a[i] - a[i - 1])); /* 求差值(波动值),取绝对值,求最大值 */printf("%d\n", maxw); /* 输出结果 */return 0;
}

100分的Python语言程序(解法二:数组处理)如下:

#  CCF201609-1 最大波动n = int(input())
nums = [int(num) for num in input().split()]
maxw = 0
for i in range(n - 1):maxw = max(maxw, abs(nums[i] - nums[i + 1]))
print(maxw)

100分的Java语言程序(解法二:数组处理)如下:

/* CCF201609-1 最大波动 */import java.util.Scanner;
import java.lang.Math;public class Main {public static void main(String args[]){Scanner sc = new Scanner(System.in);int n = sc.nextInt();int a[] = new int[n];for (int i = 0; i < n; i++) a[i] = sc.nextInt();int maxw = 0;for (int i = 1; i < n; i++)maxw = Math.max(maxw, Math.abs(a[i] - a[i - 1])); System.out.print(maxw);}
}

CCF201609-1 最大波动(100分)【序列处理】相关推荐

  1. CCF201609-1 最大波动(100分)

    试题编号: 201609-1 试题名称: 最大波动 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明正在利用股票的波动程度来研究股票.小明拿到了一只股票每天收盘时的价格,他 ...

  2. CCF201612-1 中间数(100分)【序列处理+排序】

    试题编号: 201612-1 试题名称: 中间数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在一个整数序列a 1, a 2, -, a n中,如果存在某个数,大于它的整数 ...

  3. CCF201604-1 折点计数(100分)【序列处理】

    试题编号: 201604-1 试题名称: 折点计数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定n个整数表示一个商店连续n天的销售量.如果某天之前销售量在增长,而后一天 ...

  4. CCF201509-1 数列分段(100分)【序列处理】

    试题编号: 201509-1 试题名称: 数列分段 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一个整数数列,数列中连续相同的最长整数序列算成一段,问数列中共有多少段? ...

  5. CSP202009-2 风险人群筛查(100分)【序列处理】

    试题编号: 202009-2 试题名称: 风险人群筛查 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 题目背景 某地疫情爆发后,出于"应检尽检"的原则,我们想要通知 ...

  6. CSP202012-1 期末预测之安全指数(100分)【序列处理】

    试题编号: 202012-1 试题名称: 期末预测之安全指数 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 样例1输入 6 2 60 10 100 0 70 0 0 -10 50 10 ...

  7. CCF201812-1 小明上学(100分)【序列处理】

    题目背景 小明是汉东省政法大学附属中学的一名学生,他每天都要骑自行车往返于家和学校.为了能尽可能充足地睡眠,他希望能够预计自己上学所需要的时间.他上学需要经过数段道路,相邻两段道路之间设有至多一盏红绿 ...

  8. CCF202109-2 非零段划分(100分)【序列处理】

    试题编号: 202109-2 试题名称: 非零段划分 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 题目描述 A1,A2,-,An是一个由 n 个自然数(非负整数)组成的数组.我们称其 ...

  9. CCF202109-1 数组推导(100分)【序列处理】

    试题编号: 202109-1 试题名称: 数组推导 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 题目描述 A1,A2,-,An是一个由 n个自然数(即非负整数)组成的数组.在此基础上 ...

最新文章

  1. 结对编程项目作业-设计文档
  2. JPEG压缩原理与DCT离散余弦变换 量化
  3. 升级Xcode7.3 iOS9.3后,unity转C++代码出现 2 errors
  4. java约瑟夫环迭代器_Josephus约瑟夫环问题的不同实现方法与总结
  5. 基于链路思想的SpringBoot单元测试快速写法
  6. centos oracle sqlplus,centos 下oracle sqlplus乱码问题解决
  7. “减少风险”还是“管理风险”哪一根才是救命稻草?
  8. attributeerror: __exit___利用__attribute__特性提高 APP 的鲁棒性
  9. iOS,QRCord(矩阵二维码)
  10. 熊猫烧香delphi编写免费源代码
  11. bootstrapTable导出excel无响应问题
  12. 带瀑布流的电钢琴_你没有看错 这个Find智能钢琴它会自己弹琴
  13. php程序的完整路径和文件名,php从完整文件路径中分离文件目录和文件名的方法...
  14. OpenCV_用形态学运算变换图像
  15. mstar android 怎么连接电脑,Android:Mstar平台 HDMI OUT 静音流程
  16. C++程序设计:考研路茫茫——早起看书
  17. java开发第一天该做些什么?
  18. php判断一个数是不是素数,php用函数判断一个数是否素数
  19. php微信公众号报警,Zabbix之微信订阅号平台报警
  20. 2020 SCTF 部分WriteUp

热门文章

  1. 使用GDAL下载并转换SRTM的DEM数据(一)
  2. 车辆销售系统用例_使用OpenCV和Python构建自己的车辆检测模型
  3. 另一个flutter-go
  4. DXUT框架剖析系列文章(原创:天行健 君子当自强而不息)
  5. 关于用C#编写ActiveX控件1
  6. git branch看不到分支_Git简介及基本用法
  7. Qt error: collect2: error: ld returned 1 exit status
  8. 九、索引与执行计划、索引的分类
  9. Doris之物化视图
  10. oracle表单独创建完成之后,在加备注语法