摘要: 【算法】Catalan数 【题解】 学了卡特兰数就会啦>_<! 因为奇偶各自递增,所以确定了奇偶各自的数字后排列唯一。 那么就是给2n个数分奇偶了,是不是有点像入栈出栈序呢。 将做偶数标为-1,做奇数标为+1,显然当偶数多于奇数时不合法,因为它压不住后面的奇数。 然后其实这种题目,打表就可知啦……Q 阅读全文
posted @ 2017-07-20 22:31 ONION_CYC 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 【算法】动态规划 【题解】DP有个特点(递推的特点),就是记录所有可能状态然后按顺序转移。 最优化问题中DP往往占据重要地位。 f[i][j]表示前i头奶牛,第i头改为号码j的最小改动数字,这样每头奶牛改为哪个编号的方案全部记录了,转移可以保证最优。 正反各做一次。 #include<cstdio> 阅读全文
posted @ 2017-07-20 17:25 ONION_CYC 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 【算法】计算几何 【题解】计算所有斜率排序去重。 实数判断相等用fabs(...)≤eps。 ★斜率题一定要注意斜率不存在的情况!!! 其实我觉得这份代码可以hack的…… #include<cstdio> #include<cstring> #include<cmath> #include<alg 阅读全文
posted @ 2017-07-20 16:34 ONION_CYC 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 【算法】最近公共祖先(LCA) 【题解】 点x,y到最近公共祖先z的距离之和相当于x,y到根的距离减去两倍z到根的距离, 即ans=dis[x]+dis[y]-2*dis[z] 记得边数组要开两倍!!!T_T #include<cstdio> #include<algorithm> using na 阅读全文
posted @ 2017-07-20 16:25 ONION_CYC 阅读(202) 评论(0) 推荐(0) 编辑