摘要:
终于搞明白了。根据某定理,最少需要的防御系统的数量就是最长上升子序列的数量。 呵呵手写二分果然功能很多,想清楚自己要找的是什么就可以了。 cpp include using namespace std; typedef long long ll; const int INF=0x3f3f3f3f; 阅读全文
摘要:
首先这道题没有给Hm的最大值,很坑,只能随便开一个100没想到还过了。 观察题目,发现虽然高度可以变化,但是速度是不会下降的。 那么就可以考虑dp,设 $dp[h][v]$ 表示从开始状态 $dp[h1][v1]=0$ 到达高度为h,且速度为v的最短的时间。 搞个记忆化搜索就可以了。 需要注意的地方 阅读全文
摘要:
https://www.luogu.org/fe/problem/P2439 很明显时间是一个维度,按照时间顺序决策就行了。 dp[i]表示以时间i为结尾所能达到的最长演讲时间。 cpp include using namespace std; typedef long long ll; int n 阅读全文