A - 地震预测

怀特先生是一名研究地震的科学家,最近他发现如果知道某一段时间内的地壳震动能量采样的最小波动值之和,可以有效地预测大地震的发生。

假设已知一段时间的n次地壳震动能量的采样值为a1,a2,…an,那么第i 次采样的最小波动值为min{|ai-aj| | i<j<=n},即第i 次采样的最小波动值是其后n-i次采样值与第i次采样值之差的绝对值中最小的值,特别地,第n次采样的最小波动值为an

请编写一个程序计算这n次采样的最小波动值之和。

Input

本题有多组输入数据,你必须处理到EOF为止

输入数据第一行有一个数n(1<=n<=105) ,表示采样的次数。

第二行有n个整数,表示n次地壳震动能量的采样值a1,a2,…an (0<=ai<=107 )。

Output

输出n次采样的最小波动值之和。

Sample Input

4
2 0 3 10

Sample Output

21
代码:
/* 求最长递增子序列和最长递减子序列。*/

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int n;
int a[],b[],c[];
scanf("%d",&n);
for(int i=; i<n; i++)
{
scanf("%d",&a[i]);
b[i]=;
c[i]=;
} for(int i=; i<n; i++)
for(int j=; j<i; j++)
{
if(a[j]<a[i]&&b[j]+>b[i])
b[i]=b[j]+;
} for(int i=n-; i>=; i--) //反向求
for(int j=n-; j>i; j--)
{
if(a[j]<a[i]&&c[j]+>c[i])
c[i]=c[j]+;
} int ans=;
for(int i=; i<n; i++)
if(a[i]>=&&a[i]<=)
ans=max(ans,b[i]+c[i]);
printf("%d\n",n-ans+);
return ;
}

A - 地震预测的更多相关文章

  1. FZU 1492 地震预测(模拟链表的应用)(Java实现)

    FZU 1492 地震预测(模拟链表的应用)(Java实现) 怀特先生是一名研究地震的科学家,最近他发现如果知道某一段时间内的地壳震动能量采样的最小波动值之和,可以有效地预测大地震的发生. 假设已知一 ...

  2. FZU 1492 地震预测(链表)

    实际上把数组排序一遍加入链表中,再记录好数组原来的数在链表中的位置.我们只需要维护链表的删除操作就可以了. # include <cstdio> # include <cstring ...

  3. FZU - 1492(Problem 1492 地震预测)

    怀特先生是一名研究地震的科学家,最近他发现如果知道某一段时间内的地壳震动能量采样的最小波动值之和,可以有效地预测大地震的发生. 假设已知一段时间的n次地壳震动能量的采样值为a1,a2,-an,那么第i ...

  4. [翻译]Apache Spark入门简介

    原文地址:http://blog.jobbole.com/?p=89446 我是在2013年底第一次听说Spark,当时我对Scala很感兴趣,而Spark就是使用Scala编写的.一段时间之后,我做 ...

  5. 分类指标准确率(Precision)和正确率(Accuracy)的区别

    http://www.cnblogs.com/fengfenggirl/p/classification_evaluate.html 一.引言 分类算法有很多,不同分类算法又用很多不同的变种.不同的分 ...

  6. Python学习路线2019升级版(课程大纲+视频教程+网盘资源下载)

    2019最新Python全栈+人工智能学习路线升级版 全面涵盖前端.后端.爬虫.数据挖掘.人工智能等课程(课程大纲+视频教程+网盘资源下载)! 学习路线四大亮点: 1.人工智能三大主流框架全覆盖 2. ...

  7. noip初赛复习总纲

    初赛复习总纲 目录 初赛复习总纲 计算机发展史 计算机的分类 计算机的应用 操作系统盘点 计算机的基本结构 中央处理器(**CPU**--**Central Processing Unit**) 存储 ...

  8. ML.NET相关资源整理

      在人工智能领域,无论是机器学习,还是深度学习等,Python编程语言都是绝对的主流,尽管底层都是C++实现的,似乎人工智能和C#/F#编程语言没什么关系.在人工智能的工程实现,通常都是将Pytho ...

随机推荐

  1. [转帖]C#中字典集合HashTable、Dictionary、ConcurrentDictionary三者区别

    C#中字典集合HashTable.Dictionary.ConcurrentDictionary三者区别 https://blog.csdn.net/yinghuolsx/article/detail ...

  2. noip2015day2-运输计划

    题目描述 公元$ 2044 $年,人类进入了宇宙纪元. \(L\) 国有 \(n\) 个星球,还有 \(n-1\) 条双向航道,每条航道建立在两个星球之间,这 \(n-1\) 条航道连通了 \(L\) ...

  3. [.net core]3. Project 文件简介

    这是一个C#的空的.net core web app .net frame work的.csproj 要编辑的话,得先卸载项目,  .net core的.csproje不必要, .csproj 的文件 ...

  4. ckfinder的使用

    引入<script type="text/javascript" src="${ctxStatic}/ckfinder/ckfinder.js">& ...

  5. qt QAbstractItemModel一些方法介绍

    一. virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::Edit ...

  6. ConditionalOnProperty的使用

    时间  2018-02-23 标签 ConditionalOnPropert SpringBoot 栏目 Spring 原文   http://blog.csdn.net/u010002184/art ...

  7. python-函数4(递归、高阶函数)

    python-函数4(递归.高阶函数) 递归 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. 递归特性: 1. 递归必须有一个明确的结束条件 2. 每次进入更深一 ...

  8. C#使用反射机制获取类信息

    1.用反射动态创建类实例,并调用其公有成员函数. //新建一个类库项目,增加一个GetSum方法. using System;   namespace ClassLibrary1 {    publi ...

  9. 解决CRMEasy新建咨询不能保存问题

    系统时间必须为24H制 将12H制修改为24H制的方法:(XP系统) 控制面板---区域和语言选项----区域选项-----自定义---时间----时间格式为:HH:mm:ss-----确定

  10. Codeforces 967 贪心服务器分配资源 线性基XOR递增序列构造

    A #include<bits/stdc++.h> using namespace std; ][] = {{, -}, {, }, { -, }, {, }}; typedef long ...