![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
水水水
mrkdian
这个作者很懒,什么都没留下…
展开
-
POJ 1182
带权并查集。 注意权在并和查中偏移的方式,结合向量来理解。#include struct one_node { int pre; int rel; }node[50001]; void init(int n) { for(int i=0;i<=n;i++) { node[i].pre=i; node[i].rel=0;原创 2015-01-18 12:04:34 · 248 阅读 · 0 评论 -
HDU 4708
模拟+贪心 主对角线和副对角线的和取最大值,只需每一圈数字的4个对角元的和取最大值,再将每一圈数组的对角元最大值相加即可。 #include int matrix[10][10]; int tl,tr,bl,br; void move(bool kind,int n,int step,int x) { if(kind==1) { tl=matrix[x+ste原创 2015-01-18 20:52:55 · 247 阅读 · 0 评论 -
POJ 1086
可以把括号变成01序列,处理方便。 注意题目要求n不超过20,意味这个序列里匹配好的括号不会超过10。 时间要求有1000MS,十分充裕,不需要高效的算法。直接模拟即可。 此类题注意不要过度复杂化。 #include bool str[1000]; int k=0; void add(int x) { for(int i=1;i<=x;i++) str[k++]=0;原创 2015-01-18 11:42:03 · 383 阅读 · 0 评论