当前位置: 首页 > news >正文

html5网站设计工作室源码无忧网站建设哪家好

html5网站设计工作室源码,无忧网站建设哪家好,淮北建设工程交易中心,网站建设制作设计优化【题目来源】 https://www.luogu.com.cn/problem/P2234 【题目描述】 Tiger 最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况。 Tiger 拿出了公司的账本,账本上记录了公司成立以来每天的营业额。分析…

【题目来源】
https://www.luogu.com.cn/problem/P2234

【题目描述】
Tiger 最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况。
Tiger 拿出了公司的账本,账本上记录了公司成立以来每天的营业额。分析营业情况是一项相当复杂的工作。由于节假日,大减价或者是其他情况的时候,营业额会出现一定的波动,当然一定的波动是能够接受的,但是在某些时候营业额突变得很高或是很低,这就证明公司此时的经营状况出现了问题。经济管理学上定义了一种
最小波动值来衡量这种情况:当最小波动值越大时,就说明营业情况越不稳定。
而分析整个公司的从成立到现在营业情况是否稳定,只需要把每一天的最小波动值加起来就可以了。你的任务就是编写一个程序帮助 Tiger 来计算这一个值。
我们定义,
一天的最小波动值 = min{∣该天以前某一天的营业额−该天营业额∣}
特别地,
第一天的最小波动值为第一天的营业额

【输入格式】
第一行为正整数 n(n≤
32767) ,表示该公司从成立一直到现在的天数,接下来的 n 行每行有一个整数 ai(∣ai∣≤10^6) ,表示第 i 天公司的营业额,可能存在负数

【输出格式】
输出一个正整数,即每一天最小波动值的和,保证结果小于
2^31

【输入样例】
6
5
1
2
5
4
6

【输出样例】
12

【说明/提示】
结果说明:5+∣1−5∣+∣2−1∣+∣5−5∣+∣4−5∣+∣6−5∣=5+4+1+0+1+1=12

【算法分析】
● STL set 常用函数解析

https://blog.csdn.net/hnjzsyjyj/article/details/127017796
https://blog.csdn.net/hnjzsyjyj/article/details/145528031

● 代码逻辑解析
‌(一)初始化阶段‌
在集合 s 中预先插入
inf-inf,确保后续查找操作始终存在前驱和后继节点,避免空集合导致的异常‌注意:此处的无穷大 inf 设为 0x3f3f3f3f,不要设为 0x7f7f7f7f。这是因为,0x7f7f7f7f 的缺点是容易在加法运算中溢出,导致负数结果,这在算法中可能引发错误‌。
‌(二)输入处理阶段‌
读取整数 n,循环处理每个输入值 x。
‌1.当集合仅含初始边界 
inf-inf 时‌(s.size() == 2),直接插入 x 并将 x 累加到答案 ans 中。
‌2. 当集合已有其他元素时‌:
(1)使用
lower_bound(x) 找到第一个大于等于 x 的迭代器 it‌。
(2)若 *it != x(即 x 不存在于集合中),计算 x 与 *it(后继)和 *--t(前驱)的最小差值,累加到 ans。
(3)插入 x 到集合中。
(三)输出结果‌
最终输出累加的最小差值总和 ans。

● 计算过程详析
1.输入 5 时 → 集合初始只有两个边界 → ans+=5 → 插入 5
2.输入 1 时 → 前驱 -inf,后继 5 → 最小差值 4 → ans+=4 → 插入 1
3.输入 2 时 → 前驱 1,后继 5 → 最小差值1 → ans+=1 → 插入 2
4.输入 5 时 → 已存在,不处理
5.输入 4 时 → 前驱 2,后继 5 → 最小差值 1 → ans+=1 → 插入 4
6.输入 6 时 → 前驱 5,后继 inf → 最小差值 1 → ans+=1 → 插入 6
累计总和:5+4+1+1+1=12

● ​​​​​​​适用场景
该算法适用于需要
动态维护有序序列,并在每次插入时快速计算与相邻元素的最小差值的场景,如实时数据流分析或特定竞赛题目‌。

【算法代码】

#include <bits/stdc++.h>
using namespace std;const int inf=0x3f3f3f3f;
set<int> s;
set<int>::iterator it,t;
int x,ans;
int n;int main() {s.insert(inf);s.insert(-inf);cin>>n;while(n--) {cin>>x;if(s.size()==2) {s.insert(x);ans+=x;} else {it=s.lower_bound(x);if(*it!=x) {t=it, t--;ans+=min(abs(x-*it),abs(x-*t));s.insert(x);}}}cout<<ans<<endl;return 0;
}/*
in:
6
5
1
2
5
4
6out:
12
*/





【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/145528031
https://blog.csdn.net/hnjzsyjyj/article/details/146110033



 

http://www.yayakq.cn/news/251425/

相关文章:

  • 汉口网站建设产品推广建议
  • 免费ppt优化搜索曝光次数的方法
  • 网站开发企业开发做网站的方案
  • 富阳网站优化wordpress相关文章
  • 网站制作资讯免费自动取名100个
  • 郑州门户网站建设哪家好西安专业网站建设公司
  • wordpress 同步登录北京seo优化网站建设
  • 模板网站建设公司青岛网站制作永诚
  • 织梦 网站图标飞凡网站建设
  • 查询单位信息的网站网站建设招标书
  • 视频网站为什么有人做wordpress 图片集插件
  • 好的网站推广广州新际网站建设
  • 深圳做棋牌网站建设个人兴趣图片集网站建设
  • 制作制作网站建设的ip开源网站fpga可以做点什么用
  • 网站单页面怎么做的网站建设定制公众号小程序
  • 网站开发有什么注意的建设网站需要多少人
  • 网站建设的营业执照广州市场调研公司
  • 天津企业网站建站模板名字logo设计在线生成免费
  • 赣州网站建设中心网页小游戏入口
  • 网站建设及维护费算业务宣传费源码商城源码
  • 网站更改关键词制作app需要哪些知识
  • 网站外链建设设计wordpress mysql版本
  • 网站建设与设计ppt模板下载网站后台构建
  • dedecms手机网站插件整站外包优化公司
  • php网站建设的毕设报告广州家居网站设计
  • 设计做任务的网站怎样创建旅游网站
  • 做网站颜色类型是啥wordpress 编辑器 高亮 引用
  • 做网站,图片显示不出来第一次做网站做什么比较好
  • 网站建设维护管理办法网站设计开发是啥
  • 杭州做服装电商拿货的网站wordpress 提高速度