【luogu P2234 [HNOI2002]营业额统计】 题解
题目链接:https://www.luogu.org/problemnew/show/P2234
本来是一道打算练习splay的题目
发现暴力可以过啊。。
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
#define inf 0x7fffffff
#define ri register
using namespace std;
int n,answer;
struct date{
int v, pos;
}a[132768];
bool cmp(date a, date b)
{
return a.v < b.v;
}
int check(int x)
{
int ans1 = inf,ans2 = inf,ans;
if(a[x].pos == 1) return a[x].v;
for(ri int i = x+1; i <= n; i++)
{
if(a[i].pos < a[x].pos)
{
ans1 = abs(a[i].v-a[x].v);
break;
}
}
for(ri int i = x-1; i >= 1; i--)
{
if(a[i].pos < a[x].pos)
{
ans2 = abs(a[i].v-a[x].v);
break;
}
}
if(ans1<ans2)
return ans1;
else
return ans2;
}
int main()
{
scanf("%d",&n);
for(ri int i = 1; i <= n; i++)
{
scanf("%d",&a[i].v);
a[i].pos = i;
}
sort(a+1,a+1+n,cmp);
for(ri int i = 1; i <= n; i++)
{
answer+=check(i);
}
printf("%d",answer);
return 0;
}
【luogu P2234 [HNOI2002]营业额统计】 题解的更多相关文章
- SET || BZOJ 1588: [HNOI2002]营业额统计 || Luogu P2234 [HNOI2002]营业额统计
题面:P2234 [HNOI2002]营业额统计 题解:随便写写 注意:cmath中abs函数返回的是一个浮点数,在bzoj上会ce 代码: #include<cstdio> #inclu ...
- [luogu P2234] [HNOI2002]营业额统计
[luogu P2234] [HNOI2002]营业额统计 题目描述 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司 ...
- 洛谷P2234 [HNOI2002] 营业额统计 [splay]
题目传送门 营业额统计 题目描述 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司的账本,账本上记录了公司成立以来每天 ...
- 【题解】 P2234 [HNOI2002]营业额统计
平衡树板题 原题传送门 这道题要用Splay,我博客里有对Splay的详细介绍 这道题目还算比较模板的 每输入一个数,先不要插入 要求一下前驱和后继与x差的最小值并加到答案中 再把x插入平衡树 然后你 ...
- P2234 [HNOI2002]营业额统计(Splay树)题解
思路:Splay数查找前驱后继 代码: #include<iostream> #include<cstdio> #include<cstring> #include ...
- 洛谷 P2234 [HNOI2002]营业额统计
题目描述 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司的账本,账本上记录了公司成立以来每天的营业额.分析营业情况是 ...
- 洛谷—— P2234 [HNOI2002]营业额统计
https://www.luogu.org/problem/show?pid=2234 题目描述 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业 ...
- [洛谷P2234][HNOI2002] 营业额统计 - Treap
Description Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司的账本,账本上记录了公司成立以来每天的营业额. ...
- 洛谷P2234 [HNOI2002]营业额统计
题目描述 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司的账本,账本上记录了公司成立以来每天的营业额.分析营业情况是 ...
随机推荐
- 推荐文章unity框架与工具
https://www.indienova.com/u/kuaile/blogread/1343
- Coursera 机器学习 第6章(上) Advice for Applying Machine Learning 学习笔记
这章的内容对于设计分析假设性能有很大的帮助,如果运用的好,将会节省实验者大量时间. Machine Learning System Design6.1 Evaluating a Learning Al ...
- pat1007. Maximum Subsequence Sum (25)
1007. Maximum Subsequence Sum (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Y ...
- 工作采坑札记:4. Hadoop获取InputSplit文件信息
1. 场景 基于客户的数据处理需求,客户分发诸多小数据文件,文件每行代表一条记录信息,且每个文件以"类型_yyyyMMdd_批次号"命名.由于同一条记录可能存在于多个文件中,且处于 ...
- 使用request与正则表达式爬取bangumi动画排行榜
import json import requests from requests.exceptions import RequestException import re import time d ...
- java中面向对象的三大特性小结
java中面向对象的三大特性:封装.继承.多态 封装 把抽象的数据和对数据的操作封装在一起,隐藏变量的实现细节.数据被保护在内部,程序的其他部分只有通过被授权的操作(成员方法)才能对数据进行访问. 1 ...
- 【VMware&Vritualbox】虚拟机安装windows server2016
一.下载镜像 参考链接:https://blog.csdn.net/yenange/article/details/52981769 http://blog.sina.com.cn/s/blog_10 ...
- Git使用教程,感觉比较全,所以【转载】
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以 ...
- C#学习基础(1)命名约定
c#语言规范建议使用特定大小写约定创建字标识符 Pascal 大小写 标识符中每个单词的首字母大写 用于类型名和成员名 例如:CarDeck,FirstName Camel 大小写 ...
- C++里创建 Trie字典树(中文词典)(一)(插入、遍历)
萌新做词典第一篇,做得不好,还请指正,谢谢大佬! 写了一个词典,用到了Trie字典树. 写这个词典的目的,一个是为了压缩一些数据,另一个是为了尝试搜索提示,就像在谷歌搜索的时候,打出某个关键字,会提示 ...