ACM之路
_Qero_
移动安全
展开
-
poj2226精妙的构图 二分匹配
题意:一个农夫想为一个有低洼地区的草地铺木板,木板的长度不定,宽度为1格,铺下的木板不能盖到任何一处草地,问至少需要多少木板。解题思路:这题想了很久,一直想不出来,可能最近的是失恋导致的效率问题。这题的构图十分精妙,就例子来说,给出的草地是*.*..******...*.假设只 横 着放木板的话,我们把木板编个号1.2..333444...5.假设只 竖 着放木板的话,我们把木板编个号原创 2015-01-31 14:57:05 · 526 阅读 · 0 评论 -
poj3159差分约束+栈实现的spfa+邻接链表 差分约束
题意:班长派糖果,一共有n个人,有m个关系,每个关系输入如 a b v,代表a希望自己的糖果不会比b少v个,又由于班长很痛恨编号为1的同学,希望尽量比他多尽量多得糖果,求最多可以多多少(班长的编号是n)?解题思路:设d[a]代表a有的糖果,那么每个关系有不等式d[b]-d[a]又有隐藏条件为d[i]>=0那么可以建图了,这就是差分约束的题,直接用spfa求最短路,答案是1到n的最短路。由于题目的数原创 2015-01-31 14:57:00 · 658 阅读 · 0 评论 -
hdu 1116并查集
这题想了很久,还是没做出来,看了一下网上的题解,原来是把字母当成点,用单词代表关系,这样建立并查集,检查连通性。如果连通,则检查是否存在欧拉通路,注意欧拉回路也是欧拉通路一种,离散数学的知识:要么所有点入度等于出度;要么有且只有两个点,一个是入度比出度大一,另一个一个是出度比入度大一,其余的点都相等;140ms代码#include#includetypedef struct charter{原创 2015-01-31 14:56:51 · 568 阅读 · 0 评论 -
hdu3635并查集
并查集的题。题意是悟空去收集龙珠,一开始告诉你有t颗龙珠和信息与问题的总数q然后是q个信息或问题T A B就是把龙珠A所在的城市中所有龙珠送去B龙珠所在的城市Q A就是问A龙珠所在的城市地址,该城市的龙珠个数,A龙珠的转移个数思路:开一个结构体数组,元素代表龙珠,每颗龙珠有两个变量,一个是龙珠的前一颗龙珠的id一个是所在城市的龙珠个数。明显,被转移出来的龙珠是不可能回到原来的城市了,相当于该城市的原创 2015-01-31 14:56:54 · 547 阅读 · 0 评论 -
hdu1325并查集
判断有向根树,并查集,用两个数组,一个bin记录父结点,一个flag记录是否为已有父结点,用一个数k来标记是否为有向根树。明显,1.在边的输入过程中如果出现已有父亲结点的点为子结点,则这一定不是有向根树2.在输入完成后,要检查是否只有一个根结点就满足这两点,在oj上水过~~了在与队友的交流中发现时因为数据水的缘故;应该需要加一个判断是否有连通分支为圈的情况,考虑不够周全吖!!!#includein原创 2015-01-31 14:56:57 · 599 阅读 · 0 评论 -
hdu3592查分约束的转移建图好题!!!
题意:给出n个人,ml个两人之间的最远约束,md个两个人之间的最近约束,求最远的两个人的距离。解题思路:查分约束,题目要求最大值,那么将不等式都变为设d[i]为i到最左边的人的距离,由于题目附加条件是 d[I+1]-d[I]>=0 (我们转化为 d[I]-d[I+1]即最左边的人一定是1; 输入最远约束时d[a]-d[b]b=c;输入最近约束时d[b]-d[a]a=-c;隐含条件建图时d[I]-d原创 2015-01-31 14:57:03 · 589 阅读 · 0 评论