一名苦逼的OIer,想成为ACMer

Iowa_Battleship

上一页 1 ··· 3 4 5 6 7 8 9 下一页

2018年9月17日

CF Round #510 (Div. 2)

摘要: 前言:没想到那么快就打了第二场,题目难度比 "CF Round 509 (Div. 2)" 这场要难些,不过我依旧菜,这场更是被$D$题卡了,最后$C$题都来不及敲了。。最后才$A$了$3$题,幸好$Rating$没掉。 "A. Benches" Description 有$n$个位置,给出每个位置 阅读全文

posted @ 2018-09-17 21:11 Iowa_Battleship 阅读(225) 评论(0) 推荐(0) 编辑

2018年9月16日

CF Round #509 (Div. 2)

摘要: 前言:第一次打$CF$,因为经验不足以及英语水平很烂,即便在机房大佬的带领下也是花了好久才读懂题目。。$A$题直到$11$分钟才$A$,题目一共才做了$4$题,太菜了。。 "A. Heist" Description 有$n$个正整数,设最小的数为$minn$,最大的数为$maxn$,求$minn\ 阅读全文

posted @ 2018-09-16 21:25 Iowa_Battleship 阅读(217) 评论(3) 推荐(0) 编辑

CH#17C 舞动的夜晚

摘要: "原题链接" 即求二分图的不可行边数量,因为不保证是完备匹配,所以需要通过网络流求出任意一组最大匹配,并建立新图判断。 建新图:对于跑完网络流的图上已经匹配的边,建立反边;对于没有匹配的边,建立正边(图只改变边的方向,别的结构不变)。 有结论: 1. 必须边的判定条件为:$(x,y)$的流量为$1$ 阅读全文

posted @ 2018-09-16 18:08 Iowa_Battleship 阅读(573) 评论(0) 推荐(0) 编辑

2018年9月15日

CODE[VS]2494 Vani和Cl2捉迷藏

摘要: "原题链接" 这里有一个结论:最多能选取的藏身点个数等于最小路径可重复点覆盖的路径总数。 所以我们可以先传递闭包,然后求最小路径点覆盖即可。 cpp include include using namespace std; const int N = 210; int mtc[N], n; bool 阅读全文

posted @ 2018-09-15 08:28 Iowa_Battleship 阅读(183) 评论(0) 推荐(0) 编辑

CH6901 骑士放置

摘要: "原题链接" 和棋盘覆盖( "题解" )差不多.。 同样对格子染色,显然日字的对角格子是不同色,直接在对应节点连边,然后就是二分图最大独立集问题。 cpp include include using namespace std; const int N = 1e4 + 10; const int M 阅读全文

posted @ 2018-09-15 07:35 Iowa_Battleship 阅读(203) 评论(0) 推荐(0) 编辑

2018年9月14日

POJ2226 Muddy Fields

摘要: "原题链接" 因为每一块泥地要么被横着的木板盖住,要么被竖着的木板盖住,所以可以转换为二分图最小点覆盖问题。 我们可以先标记出所有连续的行泥地和连续的列泥地。 比如对于原题中的样例,标记后是这样的: 行连续泥地:$\begin{pmatrix}1 & 0 & 2 & 0 \\ 0 & 3 & 3 & 阅读全文

posted @ 2018-09-14 16:32 Iowa_Battleship 阅读(82) 评论(0) 推荐(0) 编辑

POJ1325 Machine Schedule

摘要: "原题链接" 对于每个任务,要么选$A$机器的模式,要么选$B$机器的模式,由此想到二分图最小点覆盖。 所以我们可以将任务作为边,将对应的$A$机器模式和$B$机器模式连起来,然后直接求最小覆盖即可。 注意,本题模式从$0$开始编号,而且机器初始是在$0$模式,所以在连边时要忽略含$0$模式的任务。 阅读全文

posted @ 2018-09-14 12:50 Iowa_Battleship 阅读(77) 评论(0) 推荐(0) 编辑

POJ3565 Ants

摘要: "原题链接" 要求所有线段不相交,实际上满足每条线段的长度和最小。 所以我们可以让蚁窝和苹果树连边,边权为两点的距离,然后就是求二分图带权最小匹配了,可以上$KM$算法或是费用流。 这里我使用的是费用流。 阅读全文

posted @ 2018-09-14 12:21 Iowa_Battleship 阅读(79) 评论(0) 推荐(0) 编辑

2018年9月13日

JoyOI1935 导弹防御塔

摘要: "原题链接" 首先可以二分答案,然后考虑检验答案。 我们可以对炮塔进行拆点,即能发射$x$颗导弹就拆成$n\times x$个点,作为一个集合,另一个集合则是$m$个侵入者,然后对于能在剩余时间攻击到侵入者的炮弹和该侵入者连边,然后跑匈牙利或网络流求二分图最大匹配即可(本质是多重匹配,使用拆点法)。 阅读全文

posted @ 2018-09-13 19:44 Iowa_Battleship 阅读(171) 评论(0) 推荐(0) 编辑

CH6802 車的放置

摘要: "原题链接" 和棋盘覆盖( "题解" )差不多。 将行和列看成$n+m$个节点,且分属两个集合,如果某个节点没有被禁止,则行坐标对应节点向列坐标对应节点连边,然后就是求二分图最大匹配了。 cpp include include using namespace std; const int N = 4 阅读全文

posted @ 2018-09-13 14:26 Iowa_Battleship 阅读(163) 评论(0) 推荐(0) 编辑

JoyOI1035 棋盘覆盖

摘要: "原题链接" 对棋盘染色,坐标和为奇数的染黑,偶数为白。这时会发现对于相同颜色的格子,是无法放置骨牌的,这样我们就将所有格子分成两类,然后根据能否放置骨牌连边,最后就是求二分图最大匹配了。 这里我是用的匈牙利算法。 cpp include include using namespace std; c 阅读全文

posted @ 2018-09-13 13:48 Iowa_Battleship 阅读(199) 评论(0) 推荐(0) 编辑

2018年9月12日

POJ3683 Priest John's Busiest Day

摘要: "原题链接" $2 SAT$模板题。 对于有时间重叠的婚礼转换成$2 SAT$的命题形式连边,用$tarjan$找强连通分量并判断,确定方案即可。 然而一道模板题,我因为数组开小了调了一晚上。。。 阅读全文

posted @ 2018-09-12 21:13 Iowa_Battleship 阅读(108) 评论(0) 推荐(0) 编辑

POJ3678 Katu Puzzle

摘要: "原题链接" $2 SAT$模板题。 将$AND,OR,XOR$转换成$2 SAT$的命题形式连边,用$tarjan$求强连通分量并检验即可。 cpp include using namespace std; const int N = 2010; const int M = 4e6 + 10; i 阅读全文

posted @ 2018-09-12 13:28 Iowa_Battleship 阅读(130) 评论(0) 推荐(0) 编辑

洛谷4782 【模板】2-SAT 问题

摘要: "原题链接" $2 SAT$模板 阅读全文

posted @ 2018-09-12 12:59 Iowa_Battleship 阅读(114) 评论(0) 推荐(0) 编辑

BZOJ2330或洛谷3275 [SCOI2011]糖果

摘要: "BZOJ原题链接" "洛谷原题链接" 很明显的差分约束,但数据范围较大,朴素$SPFA$判正环求解会$T$(理论上如此,但我看到有挺多人用朴素的还跑得挺快。。),所以需要优化。 我们所建立的有向图中所有边的权值只有$0$或$1$,而且若图中有环,那么环上所有边的权值必须为$0$,否则无解。 所以我 阅读全文

posted @ 2018-09-12 11:20 Iowa_Battleship 阅读(156) 评论(0) 推荐(0) 编辑

2018年9月11日

POJ1236或洛谷2746或洛谷2812 Network of Schools

摘要: "POJ原题链接" "洛谷2746原题链接" "洛谷2812(加强版)原题链接" 显然在强连通分量里的所有学校都能通过网络得到软件,所以我们可以用$tarjan$求出强连通分量并缩点,统计缩点后每个点的入度和出度。 对于第一问,因为所有零入度的点无法通过网络得到软件,所以答案就是零入度的点的数量。 阅读全文

posted @ 2018-09-11 20:07 Iowa_Battleship 阅读(95) 评论(0) 推荐(0) 编辑

POJ2230 Watchcow

摘要: "原题链接" 类欧拉回路,要求每条边被正反各经过一次,且从$1$出发并回到$1$。 只需每次搜索该点的边时,将该点的边对应的邻接表头及时修改为下一条即可,因为邻接表恰好储存了正反方向的边,所以及时更新表头就能保证每条边被正反各经过一次。 cpp include using namespace std 阅读全文

posted @ 2018-09-11 14:33 Iowa_Battleship 阅读(87) 评论(0) 推荐(0) 编辑

POJ2942 Knights of the Round Table

摘要: "原题链接" 建补图,这样题目要求的即是求有多少个点没有被任何奇环包含。 这里有两个结论: 1. 若两个骑士属于两个不同的$v DCC$,那么这两个骑士肯定不能一起出席会议。 2. 若在某个$v DCC$中,存在一个奇环,那么该点双连通分量中所有点都被至少一个奇环包含。 所以,我们只需要在用$tar 阅读全文

posted @ 2018-09-11 14:03 Iowa_Battleship 阅读(122) 评论(0) 推荐(0) 编辑

POJ3694 Network

摘要: "原题链接" 先用$tarjan$找出所有$e DCC$,并进行缩点,这时桥的数量即是缩点后树的边数。 然后对于每一个添边$(x,y)$的操作,如果$x,y$属于同一个$e DCC$,那么桥的数量不变。 如果分别属于两个$e DCC$,那么从$x$所在的$e DCC$(设为$e[x]$)到$y$所在 阅读全文

posted @ 2018-09-11 11:31 Iowa_Battleship 阅读(113) 评论(0) 推荐(0) 编辑

2018年9月10日

BZOJ1123或洛谷3469 [POI2008]BLO-Blockade

摘要: "BZOJ原题链接" "洛谷原题链接" 若第$i$个点不是割点,那么只有这个点单独形成一个连通块,其它点依旧连通,则答案为$2\times (n 1)$。 若第$i$个点是割点,那么去掉这个点相关的边就会形成$3$种构成的连通块: 1. 由点$i$本身构成。 2. 由点$i$的子树(搜索树中)形成若 阅读全文

posted @ 2018-09-10 19:12 Iowa_Battleship 阅读(131) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 下一页

导航