上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 22 下一页

2010年12月7日

摘要: 解题思路:并查集+dp分析易知:如果答案为"no",则xi,yi属于两种不同类型(1),否则为同一类型(0)a)并查集的思想类似于POJ 1733 Parity Game relation[i]表示节点i与根节点关系b)此时,我们将所有人分成了几个(s)不同的集合,每个集合分为两类:与根节点同类的,与根节点不同类的。c)题目转化为求解是否存在唯一解:取每个集合中的一种类型(必须且仅取一种),累计人数为p1  题目转化为动态规划问题,dp[i][j]表示节点i(包括i)之前,人数不超过j的最大人数  node[i].s表示与该节点同类型的节点个数,node[i].d表示与该节点类型不同的节点个数 阅读全文
posted @ 2010-12-07 20:35 ltang 阅读(1031) 评论(1) 推荐(0) 编辑
摘要: 解题思路:hash离散化+并查集首先我们不考虑离散化:s[x]表示(root[x],x]区间1的个数的奇偶性,0-偶数,1-奇数每个输入区间[a,b],首先判断a-1与b的根节点是否相同a)如果相同表示(a-1,b]之间1的个数奇偶性已知s((a-1,b])=s[a-1]^s[b],此时只需简单判断即可b)如果不同,我们需要合并两个子树,我们将root较大的子树(例root[a])合并到root较小的子树(例root[b]),且此时s[root[a]]=s[a]^s[b]^s((a-1,b])在路径压缩的过程中s[i]=s[i]^s[root[i]],s[root[i]]为(root[root 阅读全文
posted @ 2010-12-07 12:46 ltang 阅读(1908) 评论(0) 推荐(0) 编辑

2010年12月6日

摘要: 解题思路:贪心+并查集优化欢迎review 阅读全文
posted @ 2010-12-06 22:24 ltang 阅读(435) 评论(0) 推荐(0) 编辑
摘要: 本文中排序都是采用的从小到大排序1)对int类型数组排序[代码]2)对char类型数组排序(同int类型)[代码]3)对double类型数组排序(特别要注意)[代码]4)对结构体一级排序[代码]5)对结构体二级排序[代码]6)对字符串进行排序[代码]7)计算几何中求凸包的cmp[代码]注意一点,在进行比较的时候使用 *(int *)a - *(int *)b是有bug的,当a达到int的最小值(-2^31),b达到int的最大值(2^31 - 1),会溢出,结果就不对 阅读全文
posted @ 2010-12-06 21:21 ltang 阅读(1075) 评论(0) 推荐(0) 编辑

2010年12月3日

摘要: 解题思路:hash完整C++代码 阅读全文
posted @ 2010-12-03 10:47 ltang 阅读(380) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 22 下一页

导航