关闭

[agc14e]Blue and Red Tree

前言这题主要是要想到倒过来,是一个很唯一的过程。 我大概想到了,但我比题解蠢。 题解的不需要区分红蓝让我觉得很机智。题意有一颗全是蓝边的树,你对其执行n-1次操作。 每次操作选择一条全是蓝边的路径,将其中的一条蓝边断开,假设选择的路径是j->k,断的边是x-y,且断开后j和x联通,那么k和y联通。 然后你需要选择j->x上的一个节点,以及k->y上的一个节点,在这两个节点间连红边。 现在问...
阅读(72) 评论(0)

[agc015c]Nuske vs Phantom Thnook

前言一开始想了无特殊性做法。 后来才用到树的性质QAQ题目大意一个蓝白网格图,保证蓝格子连成森林。 每次选取一个子矩阵问蓝联通块个数。做法森林联通块数=点数-边数。 于是很好做。#include #include #define fo(i,a,b) for(i=a;i<=b;i++) using namespace std; const int maxn=...
阅读(52) 评论(0)

[agc014d]Black and White Tree

前言看到这种题直觉是树的最大匹配,如果是比赛直接打毫无疑问。 然后证明了一下也不是很难的样子。 主要是见过类似套路吧。题意两个人轮流给树上节点染色。 先手涂白色,后手涂黑色。 如果最后树上存在一个白色点,与其相连的没有黑点,先手胜,否则后手胜。 请你判断先手必胜还是后手必胜。博弈我们先给出结论:后手要赢,这颗树要有完美匹配。 首先充分性显然,有完美匹配,先手涂什么成白色,你把匹配点涂黑,...
阅读(108) 评论(2)

[agc013e]Placing Squares

前言这题啃了好久啊。 一开始就知道要解决子问题,但没想到是模型转换,只是对着式子乱搞,推了好久(中途推出了一个隔项斐波那契数列)然而最后证实我式子推错了(菜醒.jpg) 于是膜拜了题解的模型转换。题意给你一个大小为m的集合S,S中不包含n。 现在对于一个正整数序列a1−aka_1-a_k,如果不存在sis_i属于集合S就是合法的,s表示a的前缀和。 这样的序列贡献是Πki=1a2i\Pi_{...
阅读(67) 评论(0)

[agc006c]Rabbit Exercise

前言一开始看成随机跳一个兔子让我感觉不可思议,于是很难。 如果理解对题意,相信这题不难做。题意n只兔子在数轴上。 有m种操作,每种操作找到一个编号的兔子,再随机选择一个编号和其相邻的兔子,然后让该兔子的位置改为与这只相邻编号兔子的对称位置。 问最后每个编号兔子位置的期望值。做法很容易发现可以用每次操作兔子的期望位置直接代替原位置,因此每次相当于xi=xi+1+xi−1−xix_i=x_{i+1...
阅读(74) 评论(0)

[agc013d]Piling Up

前言一开始写了个naive的dp发现方案数跟初始放球无关只和颜色序列有关所以我算重了。 然后想到了强制到达0,但发现会算漏(因为0会卡下界)。 然后想到加上强制到达1就不卡下界了,但发现还是会算重(如果这个方案没有执行某种转移)。 最终弄出来才觉得这种“简单dp”题的精髓还是挺秒的。题意在箱子里放n个球,有黑白两色。 执行m轮操作: 抓箱子里一个球堆在塔顶。 往箱子里放入一个黑球和一个白...
阅读(102) 评论(0)

[agc012e]Camel and Oases

前言很容易的就发现了只有log次跳跃。 然后状压DP。 似乎就是个简单题吧(怎么比12c还简单)题意一排点,两点间有距离。 初始你有一个行走值v,如果相邻两点距离不超过v你可以自由在这两点行走。 当v大于0时,你可以选择某一时刻突然飞到任意点,这样做后v会减半(下取整)。 问从每个位置初始出发能否到达所有位置。DP预处理left[i,j]表示在i行走值已经减半j次能往左走到哪,同理有rig...
阅读(73) 评论(0)

[agc012d]Colorful Balls

前言做这题时感觉肯定是有一堆球允许重排的,要求找到每种颜色这些球的个数,其余球大概都是固定的,应该不复杂。 大概思路也确实就是这样。不过需要仔细讨论。 有一个很重要的性质当然是a和b如果都能和c对换,a和b也是可以对换的。题意n个球,每个都有颜色和重量。 对于两个同颜色的球,如果重量和在x以内可以交换位置。 对于两个不同颜色的球,如果重量和在y以内可以交换位置。 问颜色序列的方案数。做法一...
阅读(59) 评论(0)

[agc012c]Tautonym Puzzle

前言怎么wxh随手秒的傻逼题我看了好多眼啊。 对于这种题我感到措手不及,因为这样的题我一般只会两种方法。 一种是分离构造,将答案序列分成若干个互不相干的部分,答案是这些部分答案的和。 那么只要我能想到如何简单构造一个部分即可。 可惜我这样想长度怎么都爆。 另一种是倍增构造,但是想了好久都不知道如何不长度*2的把答案*2。 这就很GG了。 最后总结一下我的想题过程,这样的题还是朝着二进制...
阅读(66) 评论(0)

[agc013c]Ants on a Circle

题目大意数轴蚂蚁问题升级成环。做法如果是数轴是经典问题: 两只蚂蚁相遇后掉头可以看做代替对方继续前行。 相对位置永远不变。 初始坐标刚好递增。 但是现在是环,注意到每当有蚂蚁跨过L-1或0就会使排名进行右/左移。 因此也很方便了。#include #include #define fo(i,a,b) for(i=a;i<=b;i++) using na...
阅读(102) 评论(0)

[codechef]WEASELTX

题目大意有一颗点权树。 每过一天,就会自上而下更新,更新的含义是点权变成子树内点权异或和。 若干个询问询问第d天根节点的点权。分析很显然深度相同的可以缩在一起。 我们设a[i][j]表示第i天深度为j的节点点权是否会给根节点带来影响。 容易发现a[i][j]=XORj−1k=0a[i−1][k]a[i][j]=XOR_{k=0}^{j-1} a[i-1][k] 也就是a[i][j]=a[i...
阅读(139) 评论(0)

[agc001d]Arrays and Palindrome

题目大意给定你a序列,请你重排它并构造一个b序列。 使得两个序列元素和均为n。 对于一个长度为n的字符串,满足如果前a[1]个是回文串,接下来a[2]个是回文串……且前b[1]个是回文串,接下来b[2]个是回文串……那么这个字符串处处相同。构造题我打了下表猜想了一下。 2个奇数无解。 否则奇数放首尾。 b就是第一个+1,最后一个-1,其余照抄。 #include...
阅读(132) 评论(0)

[agc001e]BBQ hard

题目大意给你a[]和b[],权值范围在2e3内。 求∑n−1i=1∑nj=i+1Cai+ajai+aj+bi+bj\sum_{i=1}^{n-1}\sum_{j=i+1}^nC_{a_i+a_j+b_i+b_j}^{a_i+a_j}做法你考虑Cba+bC_{a+b}^b的组合意义其实是从(0,0)走到(a,b)每次只能向上和向右有多少走法。 因此这个魔幻的式子其实相当于(0,0)走到两个向量和的...
阅读(123) 评论(0)

通信

题目大意在树上随机选一个序号区间的点,求构成的虚树大小期望(类似这个意思,其实是2*虚树大小-2)做法可以想到枚举区间右端点,每个节点记录cnt表示存在多少k使得[k,i]构成虚树包含自己(i是当前右端),然后每次统计答案与修改cnt复杂度与树高有关。 这个暴力可以树剖优化,但数据随机所以暴力跑过去了。#include #include #define fo(...
阅读(82) 评论(0)

生命之树

题目大意ansu=∑i在u子树中∑j在u子树中且i<j(vi xor vj)∗LCP(Si,Sj)ans_u=\sum_{i在u子树中}\sum_{j在u子树中且i<j}(v_i\ xor\ v_j)*LCP(S_i,S_j) 每个点都有点权v和一个字符串S,求ans[]。做法可以想到把v拆位做于是现在变成了黑白树。 可以想到dsu on tree,trie上节点记录子树内某个颜色的数量即可。...
阅读(79) 评论(0)
747条 共50页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:251936次
    • 积分:10104
    • 等级:
    • 排名:第1813名
    • 原创:743篇
    • 转载:4篇
    • 译文:0篇
    • 评论:189条
    最新评论
    文章分类