P2921 [USACO08DEC]在农场万圣节Trick or Treat on the Farm 题意翻译 题目描述 每年,在威斯康星州,奶牛们都会穿上衣服,收集农夫约翰在N(1<=N<=100,000)个牛棚隔间中留下的糖果,以此来庆祝美国秋天的万圣节。 由于牛棚不太大,FJ通过指定奶牛必须遵 ...
分类:
其他好文 时间:
2018-10-30 19:29:36
阅读次数:
262
"点此看题面" 大致题意: 有$N$个城市由$M$条单向道路(图不一定联通),每个城市有一个发达程度$a[i]$,要求你求出首都$S$到城市$i$的一条路径上的两个不同城市$x,y$的$a[x]\%a[y]$的最大值(包括$S$和$i$),若无法到达输出$ 1$。 一个简单的问题 首先,我们来考虑一 ...
分类:
其他好文 时间:
2018-10-29 18:25:52
阅读次数:
235
10.25 考试总结 距离退役~~死亡~~越来越近。 circle 其实只要暴力查找就可以了 搜索跑图,稍微注意一下不要让法师反复横跳就可以了,多加一个数据就可以解决只要一找到已经访问过的就证明是环了.... 开始想复杂了,以为可能有一个奇葩的图....原来就是一个简单的环啊 path 其实就是找必 ...
分类:
其他好文 时间:
2018-10-28 20:48:13
阅读次数:
163
"传送门" 解题思路 感觉这种题都是套路,首先缩点判了环(没看见自环挂了一次。。),然后设$f[x][i]$表示到了$x$,$i$这个字母走过的最长距离,然后拓扑排序更新即可。 代码 cpp include include include include include using namespac ...
分类:
其他好文 时间:
2018-10-28 19:34:36
阅读次数:
183
好久没发博客了啊!自我反省1s。。。今天再捡起来。 这个题是一道有一点特殊的tarjan,用tarjan维护子树大小,然后判断是否有边多次连接,(就是非树边),然后就进行乘法计算就行了。 具体在代码里讲: 题干: 代码: ...
分类:
其他好文 时间:
2018-10-28 19:34:29
阅读次数:
149
待update 图论 单源最短路(dij,spfa) 多元最短路(floyd) 最小(大)生成树(prim kruscal) 欧拉回路 强连通分量(tarjan).缩点 割点.桥 差分约束 k短路 并查集 数论 线性筛素数 快速幂 求约数集合 最大公约数和最小公倍数 组合数 二项式定理 lucas定 ...
分类:
其他好文 时间:
2018-10-28 16:07:05
阅读次数:
228
这个题调了一天。。 传送门 读完题目之后我们不难想出这个题是个tarjan缩点问题,因为尽量多的经过草场,所以一号点所在的强连通分量里左右的点都是不需要在进行走逆向边,所能到达的。 然后问题就落在怎么处理我们走这一次逆向边上。 仔细看题目要求,题目要求我们必须从一号点出发,最后回到一号点。所以我想到 ...
分类:
其他好文 时间:
2018-10-28 11:26:03
阅读次数:
221
概念: 在有向图G中,如果两个定点u可以到达v,并且v也可以到达u,那么我们称这两个定点强连通。 如果有向图G的任意两个顶点都是强连通的,那么我们称G是一个强连通图。 一个有向图中的最大强连通子图,称为强连通分量。 tarjan的主要思想: 从一个点开始DFS,记录两个数组,dfn[]和low[]。 ...
分类:
编程语言 时间:
2018-10-28 11:09:32
阅读次数:
228
题目分析: 如果一个双连通分量是简单环,那么用polya原理计数循环移位即可。 如果一个双连通分量不是简单环,那么它必然可以两两互换,不信你可以证明一下相邻的可以互换。 如果一条边是桥,那么直接乘以k就行了。 代码: ...
分类:
其他好文 时间:
2018-10-24 22:18:43
阅读次数:
242
<题目链接> 题目大意:给你一棵树,然后进行q次询问,然后要你统计这q次询问中指定的两个节点最近公共祖先出现的次数。 解题分析:LCA模板题,下面用的是离线Tarjan来解决。并且为了代码的简洁,本代码用的是vector存图。 2018-10-21 ...
分类:
其他好文 时间:
2018-10-21 13:05:44
阅读次数:
209