cdcq

梦幻小鱼干

导航

2020年2月8日 #

【洛谷1223】木棍加工

摘要: 原题: n<=5000 结论题 = = dilworth定理,对于一个偏序集,最少链划分等于最长反链长度 即序列的最少下降划分等于最长不下降子序列长度 代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 using 阅读全文

posted @ 2020-02-08 16:12 cdcq 阅读(156) 评论(0) 推荐(0) 编辑

【NOIP2013】积木大赛

摘要: 原题: n<=1e5,h<=1e4 性质:对于一段连续区间(经过一些列操作后仍然连续)的最低点h[i],毫无疑问一定要进行h[i]次操作把下边削平,这一定是最优解 由此·,f(l,r)表示分治区间[l,r],选出最低点然后递归分治 时间并不是n^2而是n*h,因为每次分治至少要削掉一层(我写得代码并 阅读全文

posted @ 2020-02-08 15:45 cdcq 阅读(161) 评论(0) 推荐(0) 编辑

【洛谷1108】低价购买

摘要: 原题: n<=5000 第一个子问题是求最长下降子序列的长度,这个大家都会,用一个单调的g数组+二分可以nlogn求 第二个子问题是求本质不同的方案数 其实数据只有5000,可以用n^2来实现第一个子问题,完全没必要局限于nlogn的做法 研究本质相同的方案的特点 a表示输入的价格序列,g[i]和g 阅读全文

posted @ 2020-02-08 15:02 cdcq 阅读(164) 评论(0) 推荐(0) 编辑

【NOIP2007】守望者的逃离

摘要: 原题: 这个马维一看就不会玩,闪现肯定直接抄近道,谁会老老实实按路线闪 一眼看上去一道数学题,但是仔细观察可以发现可用的时间不多,只有3e5 因此可以大力发扬暴力精神,直接枚举闪多少次或者聚多少秒 如果枚举闪多少次,则还需要计算攒够闪这么多次的时间,比较繁琐 枚举聚多少秒相对简单,但是需要注意,一开 阅读全文

posted @ 2020-02-08 10:01 cdcq 阅读(241) 评论(0) 推荐(0) 编辑