题解 AT2390 【Games on DAG】】的更多相关文章

AT2390 Games on DAG 题意 \(1,2\) 号点各一个石头,每次沿边移动一个石头,不能动者输.求所有连边子集中先手胜的情况. 思路 发现对于两个石头的 SG 函数是独立的,输者两个石头 SG 函数异或值为 0,那么先手胜的情况就是所有情况减去这种情况. 对于所有 SG 函数为 \(v\) 的点,它们必须向 SG 函数小于 \(v\) 的所有点连至少一条边,对大于 \(v\) 的连边没有约束,并且互相不能连边. 所以我们可以枚举当前图的 SG 函数为 0 的点,这样所有其他点都至…
题目大意 给出一个n个点m条边的DAG,记为G. 可以删掉若干条边成为G′,显然有 2m 种不同的G′. 连边保证:若有 (xi →yi​) 边,则 xi​ < yi . 初始点1和点2有一个标记,Alice和Bob玩游戏,每次可以将任意一个标记沿边移动. 不能移动#者输,求这 2m 张图有多少先手必胜. 对 109 + 7取模. 思路 这题的1和2两个点显然是可以互相独立的 所以可以分开考虑,当做两个不同的子游戏 根据sg定理可以知道当sg[ 1 ]与sg[ 2 ]不同时先手必胜 但是发现直接…
题意 给你一个有 \(n\) 个点 \(m\) 条边 DAG 图,点的标号和拓扑序一致. 现在有两个人进行博弈,有两个棋子分别在 \(1, 2\) 号点上,需要不断移动到它指向的点上. 如果当前两个点都无法移动,那么就视为当前操作的人失败. 问有多少边集满足先手必胜. \(\displaystyle 2 \le n \le 15, m \le \frac{n \times (n+1)}{2}\) 题解 参考了 wxh010910 大佬的博客 . 首先利用博弈的 SG 函数易得,如果 \(1\)…
正题 题目链接:https://www.luogu.com.cn/problem/AT2390 解题思路 \(n\)个点的\(DAG\),\(m\)条边可有可无,\(1\)和\(2\)上有石头.求有多少种方案使得先手必胜. \(1\leq n\leq 15,1\leq m\leq \frac{n(n-1)}{2}\) 解题思路 这个复杂度比较麻烦,要设计一个比较巧妙的\(dp\). 考虑到题目是问多少种情况\(SG(1)\neq SG(2)\),其实求\(SG(1)=SG(2)\)的方案会更简单…
洛谷题面传送门 & Atcoder 题面传送门 如何看待 tzc 补他一个月前做的题目的题解 首先根据 SG 定理先手必输当且仅当 \(\text{SG}(1)=\text{SG}(2)\).考虑从反面入手,拿总情况数减去 \(\text{SG}(1)=\text{SG}(2)\) 的方案数. 怎么求 \(\text{SG}(1)=\text{SG}(2)\) 的方案数呢?看到这类数据范围巨小并且要你求"有多少组边集满足保留边集中的边后符合 xxx 条件"的题目,果断选择对点集…
题目传送门:https://agc016.contest.atcoder.jp/tasks/agc016_f 题目大意: 给定一个\(N\)点\(M\)边的DAG,\(x_i\)有边连向\(y_i\),保证\(x_i<y_i\),原图有\(2^M\)个生成子图,对于每个子图\(G'\),\(A,B\)两人正在玩一个游戏:初始时点1,2上有棋子,每次操作可以把某个棋子沿有向边移动一步,最后不能操作的人为输.问有多少个子图\(G'\)满足先手必胜 这种神题一看就不会写--首先考虑博弈,先手必胜的话当…
\(\mathcal{Description}\)   Link.   给定一个含 \(n\) 个点 \(m\) 条边的 DAG,有两枚初始在 1 号点和 2 号点的棋子.两人博弈,轮流移动其中一枚棋子到邻接结点位置,无法移动者负.求 \(2^m\) 个边集中,加入图中能使先手必胜的方案数.答案对 \(10^9+7\) 取模.   \(n\le15\). \(\mathcal{Solution}\)   先从博弈角度思考:两枚棋子显然独立,那么先手必胜等价于 \(\operatorname{sg…
呼我竟然真的去刷了016QwQ[本来以为就是个flag的233] 感觉AGC题目写起来都不是很麻烦但是确实动脑子qvq[比较适合训练我这种没脑子选手] 先扔个传送门:点我 A.Shrinking 题意:给一个串S,每一轮操作可以使S变成S'.S'[i]=S[i] 或者 S[i+1](你来选择).每次字符串长度-1(去掉最后一个字符).问最少几轮操作后可以使S中的字符都相同.(|S|<=100) 撕烤过程:诶?区间DP??这没法转移啊??哦凑|S|怎么这么小??暴搜就行了啊. 题解:枚举最后S中剩…
常见DP模型及其构造 序列DP ARC074 RGB Sequence 题意 给你一个长度为 \(n\) 的序列和 \(m\) 组约束条件,每组条件形如 \(l_i,r_i,x_i\),表示序列上的 \([l_i,r_i]\) 中恰好有 \(x_i\) 种颜色,现在要你用三种颜色给这个序列染色,求满足所有约束的方案数. \(n,m \le 300\). 技巧:设计出契合数据范围的状态 题解 注意到最多只有三种颜色,因此可以把颜色的信息记得暴力一些.设 \(dp[i][j][k]\) 表示三种颜色…
最前面: AT的题都很有思维难度,总结一下一些AT的常规操作 1.对于有操作的题目,如果正面推不行的话考虑倒推,将操作转化,寻找更好的性质 2.模型转化,看到某一种的计算的式子,需要考虑有没有更简化的模型可以达到相同的效果 3.补集转化,正难则反 4.分析题目性质,计数题要找到一些限制条件或者构造方案使得计数不重不漏 目标:稳定三题 比例:D:0/1  C:3/6 B:2/3 10.12 - 10.22 AGC47:Solved A,B,C,D Aim E AGC46:Solved A,B,C,…