AtCoder
文章平均质量分 78
Hany01
这个作者很懒,什么都没留下…
展开
-
AGC 001 F Wide Swap (拓扑排序)
Description给定一个1⋯n1\cdots n的排列{pi}\{p_i\},给定一个KK,对于pi=pj+1p_i=p_j+1且|i−j|≥K|i-j|\ge K可以交换pip_i和pjp_j的值,求经过变换可以得到的最小的字典序Solution求得{pi}\{p_i\}的位置序列{qi}\{q_i\},则可以发现要求{pi}\{p_i\}的字典序尽量小即{qi}\{q_i\}的字典序尽量小原创 2017-10-09 09:56:32 · 390 阅读 · 0 评论 -
【ARC101E】Ribbons on Tree(树形DP,容斥原理)
Description 给定一棵点数为偶数的树,要求有多少种将点两两配对的方案使得每一条边至少被一对匹配点之间的最短路径覆盖。 Solution 根本想不到的DP系列。 首先考虑一个容斥,设F(E)F(E)F(E)表示至少将边集EEE中的边全部拆掉所形成的联通块配对的方案数,那么答案等于∑EF(E)×(−1)|E|∑EF(E)×(−1)|E|\sum\limits_{E}F(E)\...原创 2018-09-02 20:29:39 · 745 阅读 · 0 评论 -
【ARC086E】Smuggling Marbles(虚树,树形DP)
Description 给出一棵 N 个点的有根树 , 初始时其中一些点上有一个石子 , 每次同时将所有石子从所在的点移动到父亲上 , 根节点上的石子移动到篮子里 .如果有一个点上的石子数大于 1 则移除所有石子 , 树上没有石子时结束 .求所有 2 N 种初始局面经过操作后篮子里石子的总数量 . Solution 我们发现每一层的点都是独立的,考虑分开处理,分别将每一层的点建成虚树...原创 2018-08-25 16:10:13 · 277 阅读 · 0 评论 -
【ARC069F】Flags(二分,2-SAT,线段树优化建边)
Description 有nnn面flag,每个flag可以立在两个地方,求出一种方案使得flag之间的最小距离最大。 Solution 首先二分这个距离,然后用2-SAT检查方案是否可行。 这样最坏情况建出来的边是n2n2n^2的,用线段树优化建边即可。 Code /************************************************ *...原创 2018-08-31 23:44:13 · 242 阅读 · 0 评论 -
【ARC074E】RGB Sequence(DP)
Description 给你一个长度为 N 的序列和 M 组约束条件 , 每组条件形如L i , R i , X i , 表示序列上的 [L i , R i ] 中恰好有 X i 种颜色 , 现在要你用三种颜 色给这个序列染色 , 求满足所有约束的方案数 . Solution 用dpt,i,j,kdpt,i,j,kdp_{t,i,j,k}表示到第ttt位,上一次出现红色/绿色/蓝色...原创 2018-08-23 22:45:36 · 198 阅读 · 0 评论 -
【AGC016F】Games on DAG(SG函数,状压DP,子集枚举)
Description 有一个DAG,1号点和2号点各有一个石子.两个玩家交替将其中一个石子沿着一条有向边移动,不能移动的玩家输掉游戏.问有多少种选边的方案使得先手必胜. Solution 将题目的条件转化成111号点和222号点的SG函数不相等. 我们设fSfSf_{S}表示对于点集SS\mathbf{S}有多少种选边方案使得1号点和2号点SGSGSG函数相等.(SSS要么同时包...原创 2018-08-27 21:18:15 · 428 阅读 · 0 评论 -
【AGC017F】Zigzag(状压DP)
Description 有一个nnn层的三角形,如图所示: 从顶端开始,每次可以选择向左下走或者向后下走,一直到达底端,形成一条路线。 问有多少种方案画mmm条线路满足: - mmm条线路可以重合但是不能交叉 - 给出kkk条限制,每条限制形如:Ai,Bi,CiAi,Bi,CiA_i,B_i,C_i,表示第AiAiA_i条路线的第BiBiB_i步只能向CiCiC_i方向走。 ...原创 2018-08-19 16:29:07 · 246 阅读 · 0 评论 -
【AGC003E】Sequential operations on Sequence
Description 给定一个序列,资瓷将其无限复制后截取前qiqiq_i位,问最后每个数字出现的次数。 Solution 首先可以发现对于qi>qi+1qi>qi+1q_i>q_{i+1},qiqiq_i是没有意义的,我们只要留下一个递增的操作序列。所以我们每次都是将序列复制很多个后再加上一些零头。 我们设sisis_i表示第iii次操作得到的序列在最终序列中的出现...原创 2018-08-16 17:27:52 · 235 阅读 · 0 评论 -
【AGC010 D】Decrementing (博弈)
Description 有一个正整数数列,两人轮流操作,每次选择一个大于1的数,将其减1,然后将所有数除以所有数的gcdgcd\gcd,无法操作的一方负,问先手必胜还是后手必胜。 Solution 考虑对于1,1,…,1,2是必胜的,对于其它的k,k,...,k,k+1k,k,...,k,k+1k,k,...,k,k+1,对方都可以通过操作来避免。而1,1,…,1,2有奇数个偶数。 ...原创 2018-07-23 16:52:23 · 197 阅读 · 0 评论 -
【ARC080 F】Prime Flip(二分图匹配)
Description 有一个无限长的序列,一些位置被翻转了,你每次可以翻转连续奇质数个位置,问最少多少次操作可以将所有位置复原。 Solution (这是LSTete的题解) 定义序列SSS表示元件的方向, 0下1上, 特别地, S0=0S0=0{S_0} = 0. 不妨考虑差分, 定义序列CCC, 当 Si=Si−1 Si=Si−1 ~...原创 2018-07-16 20:29:58 · 270 阅读 · 0 评论 -
【ARC090 F】Strange Nim(SG函数)
Description 给定nnn堆石子,每堆石子有一个数量AiAiA_i和一个参数KiKiK_i,两个人轮流选择一堆石子并选择1…⌊AiKi⌋1…⌊AiKi⌋1\dots\lfloor\frac{A_i}{K_i}\rfloor中的一个数,扔掉该数量的石子,不能操作的一方输掉比赛。问是先手必胜还是后手必胜。 Solution 设g(n,k)g(n,k)g(n,k)表示有nnn个石子、参数为...原创 2018-03-12 21:33:07 · 245 阅读 · 0 评论 -
【AGC021 D】Reversed LCS(DP)
Description 给定一个字符串,可以更改其中的kkk个字符,要求最大化该字符串与其翻转字符串的LCS长度,求该长度。 Solution 考虑DP,设fi,j,kfi,j,kf_{i,j,k}表示从iii到jjj的字符串更改kkk个字符可达到的最大长度,直接转移即可。 Source /***********************************************...原创 2018-02-25 10:19:13 · 280 阅读 · 0 评论 -
AGC013 D Piling Up & Simulation 20171020 friend(DP)
Description1.1 AGC013 D Piling UP在箱子里放n个球,有黑白两色。执行m轮操作: 1.抓箱子里一个球堆在塔顶。 2.往箱子里放入一个黑球和一个白球。 3.再抓箱子里的一个球堆在塔顶。 求塔的方案数1.2 Simulation 20171020 friend (By XZK dalao)Flowey 是一朵能够通过友谊颗粒传播 LOVE 的小花.它的友谊颗原创 2018-01-01 21:16:36 · 401 阅读 · 0 评论 -
ARC 071 F Infinite Sequence (DP)
Description你获得了无限个数,为此你需要一个无限长的数组来存储数,这个数组要满足以下条件 1. 数组仅包含 1,2,3,...,n1, 2, 3, ..., n; 2. 如果 n≤i,jn ≤ i, j,那么 ai=aja_i = a_j; 3. 如果 i<j<k≤i+aii < j < k ≤ i + a_i ,那么 aj=aka_j = a_k; 计算有多少种满足条件的数组,答原创 2017-11-04 16:48:25 · 303 阅读 · 0 评论 -
AGC 018 C Coin (堆)
Description有X+Y+ZX+Y+Z个人,每个人有一定的金、银、铜币,你可以向XX个人要金币,向YY个人要银币,向ZZ个人要铜币,且不能向同一个人要两种不同的钱币,问能拿到的钱币数量的最大值。Solution按金币减去银币的数量从小到大排序: 在这个顺序下,最佳方案中所有给予金币的人都在给予银币的人的右边。(想一想,为什么) 存在整数K使得:左边的K个人中,有Y个给银币的人,(K-Y)个原创 2017-11-03 20:47:16 · 519 阅读 · 0 评论