
2019HDU暑期多校
ACgay_caoyue
菜鸡*CPCer
展开
-
【2019HDU暑期多校第一场泛做】
题目是按通过量做的,所以题号可能不太对。 1.Vacation 这种问题一定不能思考的太复杂,不要把自己绕进去。 我们就简单的将其分成两类: (1) 前面没车堵我。 (2) 前面全部都堵我。 对于第一种情况,没车堵我,那么显然就是s[0]/v[0]。 重点关注第二种情况,前面所有的车都堵我。 思考了五秒钟以后我们发现,前面所有的车都堵我是啥意思,就是第一辆车最慢呗。 那么答案是什么呢?就是(s[n...原创 2019-08-22 19:42:43 · 187 阅读 · 0 评论 -
【HDU6606】线段树优化dp
HDU6606 分析: 首先肯定想到二分答案。 但是在check的时候会出现不少的问题: 1.如何划分为k部分。 2.如何记录每部分的和。 那么怎么解决呢? 设dp[i]表示前i个数字在最大值为x的情况下可以分为最多的段数。 显然如果dp[i]>=k,那么就是满足条件的。 转移也很简单,设sum[i]表示前缀和,则: dp[i]=max(dp[j]+1),sum[i]−sum[j]<=...原创 2019-09-17 13:29:06 · 345 阅读 · 0 评论 -
【HDU6611】费用流
HDU6611 分析: 这题竟然不是dp 题意是求k个不下降子序列的和的最大值。 竟然不是dp!!! 将i拆点,容量1,费用-a[i], 然后对于a[j]>=a[i],连i+n到j,容量1,费用0 然后起点连i,i+n连终点。跑容量为k的最小费用即可。 最后答案取反。 正确性很显然。 把图画出来就可以完全理解了。 //电子科大板子真好用 #include <bits/stdc++.h&...原创 2019-09-17 16:19:08 · 269 阅读 · 0 评论