第一题:

题目大意:(难以概括,就不贴了把。)

解题过程:

1.担心被精度问题恶心,就把平均数的地方乘了N,这样只有最后计算的时候才会是小数。。

2.数组保存的时候蛋疼的 没改成double。结果全部WA了。 初始得分0分。


第二题:

题目大意:

给出N件衣服的湿度,然后单位时间里衣服的湿度自然会减少A,单位时间里还可以用烘干机使一件衣服的湿度减少B(烘干的同时会自然减少A)。求最少的时间衣服全部干。

解题过程:

1.很明显是考堆的,一个贪心思想就是每次都取出湿度最大的衣服 用一次 烘干机。

2.while 循环的条件写错了,一开始写的是 当湿度最大的衣服 湿度比B小的话就 退出,然后剩下的衣服自然就会干了。 然后就脑残地把剩下的衣服 自然干的时间当成了1,ans++后输出。 初始得分40分。

3.另外一个比较不错的思路:二分答案,然后扫一遍,如果 限定时间内不能自然干的,自然就要用烘干机。然后累计烘干机的使用次数,如果比限定时间大 说明答案太小。时间稍微慢了点,但也能AC。


第三题:

题目大意:给出N个数,求最大的区间,使得区间的最左边的元素严格最小,最右边的元素严格最大(严格最大最小即中间不能有相同的)。

解题过程:

1.由于和区间最大最小值有关,就先用ST算法做一次RMQ,求出区间的最大值最小值的位置(注意是位置而不是值)。然后用递归解决。对于一个区间[L,R],设最小值所在的位置是min_pos,最大值所在的位置是max_pos,那么分下面2种情况讨论。

A:min_pos<max_pos,那么递归处理[L,min_pos-1],[max_pos+1,R],对于区间[min_pos,max_pos],还要看他们之间有没有出现和两端的值相等的元素,如果没有,那么该区间就是合法的,如果中间有最小值,且位置是t,那么递归处理[min_pos,t-1] [t,max_pos], 如果中间有最大值,且位置是t,那么同理递归处理区间[min_pos,t]和区间[t+1,max_pos].

B:min_pos>max_pos,那么递归处理[L,max_pos],[min_pos,R],[max_pos+1,min_pos-1];

初始得分80分,递归层数过多爆系统栈了。。。自己手写栈后AC。

2.其实 对于情况A中 区间里有多个极值的情况,只要修改一下RMQ部分(当区间有多个最小值的时候,取最右边的,最大值取最左边的)。这样就保证了 区间[min_pos,max_pos]内不会出现多个极值的情况。 这样减少了部分递归次数后,不用手写栈也能过。

3.来自YYL的另类方法:枚举区间的左端点,利用min[L,R]随着R的增大是非增的,二分右端点直到找到最大的R,使得min[L+1,R] 大于num[L];那么区间[L,max_pos[L+1,R]]就是符合要求的。(RMQ时如果有多个最大值,需要取最右边的)

4.写题解时突然想到的算法:枚举区间的左端点,用RMQ找右端点。 对于一个确定的左端点L,需要找到一个最大的R,使得min[L+1,R] 大于num[L],且max[L+1,R]==num[R]。

R初始为max_pos[L+1,N],然后不断R=max_pos[L+1,R-1]直到找到第一个符合要求的。

最新文章

  1. linux內核輸出soft lockup
  2. [转载]MySQL5.5 配置文件 my.ini 1067错误
  3. Operators一句话介绍(RxJava版)
  4. c#委托事件及其讲解
  5. Hive分布式的数据仓库
  6. [CTO]创业团队CTO应具备的素质
  7. LA 2402 (枚举) Fishnet
  8. (四)学习CSS之position、bottom、left、right和top属性
  9. Java基础知识强化之IO流笔记71:NIO之 NIO的(New IO流)介绍
  10. Docker学习笔记(3) — docker仓库的镜像怎么删除
  11. GOPS2017全球运维大会深圳站 出席嘉宾盘点!
  12. 关于md5的使用方法
  13. ●洛谷P3688 [ZJOI2017]树状数组
  14. 快速EDAS字体嵌入问题
  15. 对于BFS的理解和部分例题(
  16. Python基础-python数据类型之字符串(四)
  17. Django 2.0.1 官方文档翻译:编写你的第一个djang补丁(page 15)
  18. HTML常用模板:用DIV实现网站首页、后台管理首页(整理)
  19. 初学Struts2
  20. 23种设计模式之策略模式(Strategy)

热门文章

  1. python仿微软记事本
  2. python中if __name__ == &#39;__main__&#39;
  3. 【Todo】【读书笔记】大数据Spark企业级实战版 &amp; Scala学习
  4. ListView 使用详解
  5. gdufs 1237 最优分解问题
  6. Android事件传递机制(转)
  7. Maven——使用Nexus搭建Maven私服
  8. MySQL在windows系统中修改datadir路径后无法启动问题,报错1067
  9. hiho_1059_string matching content length
  10. 解决Tomcat: Can&#39;t load IA 32-bit .dll on a AMD 64-bit platform问题