POJ 1065-Dilworth定理
来源:互联网 发布:海明园艺淘宝店 编辑:程序博客网 时间:2024/06/05 10:51
题目链接
Dilworth定理:对于一个偏序集,最少链划分等于最长反链长度。
Dilworth定理的对偶定理:对于一个偏序集,其最少反链划分数等于其最长链的长度。
也就是说把一个数列划分成最少的最长不升子序列的数目就等于这个数列的最长上升子序列的长度。(记住就好 hhhh~一篇解释博客)
所以就变成将l排序如果l相等就按w排序,最终求w最长下降子序列长度了
#include <iostream>#include <cstdio>#include <algorithm>using namespace std;const int N = 5000;const int INF = 0x3f3f3f3f;struct Stick { int l, w; bool operator< (const Stick& b) { return (l != b.l) ? (l > b.l) : (w > b.w); }};int main(void){ int t, n; Stick s[N]; int dp[N]; cin >> t; while (t--) { cin >> n; fill(dp, dp+n, INF); for (int i = 0; i < n; i ++) scanf("%d%d", &s[i].l, &s[i].w); sort(s, s+n); for (int i = 0; i < n; i ++) { *lower_bound(dp, dp+n, s[i].w) = s[i].w; } printf("%d\n", lower_bound(dp, dp+n, INF) - dp); } return 0;}
阅读全文
0 0
- POJ 1065-Dilworth定理
- POJ 3636 POJ 1065 (Dilworth定理)
- POJ 1065 贪心算法(Dilworth定理)
- Dilworth定理
- Dilworth定理
- DilWorth定理
- Dilworth定理
- poj 3636 Dilworth定理(嵌套方形娃娃) Dilworth定理详细讲解
- POJ 1065-Wooden Sticks [dp+Dilworth定理] 《挑战程序设计竞赛》2.3
- poj 1548 Dilworth定理(机器人清理垃圾)
- 偏序关系和Dilworth定理(poj 1548)
- 偏序集-Dilworth定理
- dilworth定理{偏序集}
- Dilworth定理相问题
- 偏序集-Dilworth定理
- POJ1548-Robots Dilworth 定理
- BZOJ3997 Dilworth定理
- POJ1065 Dilworth定理
- HDU_6138 Fleet of the Eternal Throne 【AC自动机&&思维】【静态数组】
- 进程优先级之setpriority系统调用
- 获取qq的第三方登录以及分享
- 背包问题 求解个数
- 02:输出第二个整数
- POJ 1065-Dilworth定理
- redis简介和conf文件配置说明
- 2017年中国大学生计算机设计大赛参赛作品《SoloBug
- sklearn.linear_model中的LogisticRegression
- Git Branch
- 【源码分析】HashMap的数据结构
- Android学习之路(一)
- 深度学习浅析,以及又拍云图片鉴别的实践进阶
- spring应用启动加载自定义类方法的几种方式