关闭
当前搜索:

[agc002e]Candy Piles

前言这次我做博弈题开始根据特殊态猜测必胜态,失败了。 这个模型转换还是有点厉害的。题目大意很多堆石子,两人游戏。 每次可以取走数量最多的那堆石子的全部石子,或取走每堆各一个石子。模型转换我们把一堆石子想象成一个石子个数*1的矩形。 把矩形从高到低排列变成一个图形。 我们每次可以删除最低下一行或最左边一列。 假设有一个点初始在(1,1),它在(x,y)表示[1,x)的列被删了,[1,y)的行...
阅读(67) 评论(0)

Astar百度之星2017转圈记

DAY 0坐飞机+坐车真累。 欢迎晚宴非常尬。 百度事情非常多。 拍mv是不是凉了?DAY 1如何30min从起点到起点。 坐车dfs到目的地。 强行比预计晚2h开始了比赛。 题目是贪吃蛇大作战。 第一阶段我主要在搞懂给我发的那些示例代码。 枚举类型是啥,不会啊。 咋编译啊。 我vector是不是不会用了,咋CE啊。 测试赛第一轮交了示例代码,往右走撞墙。 然后一开始的策略很...
阅读(353) 评论(0)

[agc002d]Stamp Rally

前言简单套路题。题目大意一副连通图,每次询问从两个点x和y出发走出两条路径,希望至少经过一次的点数量等于z,经过的边最大编号最小是多少。简单题假如可以暴力,你可以按编号从小到大加入边,如果x和y不在一个联通块,能经过的点等于两个所在联通块大小的和,否则等于所在联通块大小,找到第一次大于等于z的位置。 不枚举也可以二分。 那不如整体二分吧,并查集采用按秩合并,好处是容易撤销。#include<cs...
阅读(114) 评论(0)

[agc008d]K-th K

前言简单构造,一开始看错题瞎写了一发。题目大意给了一个长度为n的序列x。 请构造一个长度为n*n的序列a,只包含1~n这n个元素,每个元素出现n次,且对于元素i,a的第xi个位置是元素i,且前xi个位置恰好有i个i。构造显然可以正反各贪心一遍,不懂就看程序,正确性显然。 瞎填以后还可以n^3验证。#include #include #define fo(i,...
阅读(104) 评论(0)

[agc009e]Eternal Average

前言需要发现性质的dp。 重点在于发现性质。题意请构造若干k叉树,使得每颗均有n+m个叶子,有n个叶子点权为0,m个叶子点权为1,对于非叶子点权为儿子点权的平均数。 问最多构造多少k叉树,使得任意两颗根节点点权不同?DP令n个叶子的深度为x1~xn,同理m个叶子的深度为y1~ym。 发现根节点的点权是∑mi=1k−yi\sum_{i=1}^mk^{-y_i}。 如果所有叶子点权都为1,那么根...
阅读(183) 评论(0)

[agc009d]Uninity

前言我居然一开始觉得点分治最优秀。题目大意类似点分治过程,只不过分治中心任意选择。 求点分树最小深度。做法首先直接点分治深度不超过log,所以答案上界是log。 假设我们给每个点一个标号表示它在点分树的深度。 那么我们发现,对于两个标号同为k的点,它们的路径上一定存在一个点的标号大于k。 我们定义一个数k对于子树x是良好的,要满足x的标号为k或x子树中存在一点y标号为k且y到x路径上没有标号...
阅读(234) 评论(0)

[agc009c]Division into Two

前言DP题,还可以,不是很难。题目大意把一堆互不相同的数分成两个集合X和Y,其中一个集合X任意两数之差不小于A,另一集合Y任意两数之差不小于B。 问方案数,集合可以为空。DP把这些数排序。 接着添加第0个数无穷小以及第n+1个数无穷大。 我们假设A>=B。 设f[i]表示分配好了前i个数,第i个数去X集合的方案。 转移显然要找到上一个位置j。 第一种情况j=i-1,只要a[i]-a[i-...
阅读(76) 评论(0)

[agc009b]Tournament

前言简单题。题目大意若干轮比赛,每个人在某一轮可以参赛,和另外一个人pk,输的人淘汰。 最后1是冠军,已知其余每个人输给了谁,请问最少设置多少轮比赛?做法你显然可以根据每个人输给了谁建一颗树,然后处理f[x]表示x淘汰所有输给他的人所需要的最小轮数。 转移很简单,根据儿子的f排序,然后详见代码(不会说)。#include #include #define f...
阅读(83) 评论(0)

[agc010e]Rearranging

前言想到了相对顺序和连图。 想到了多个合并。 似乎没想到按照大小连出拓扑图,导致不知道怎么样才是最小不可操作的。题目大意一个长度为n的序列。 先手可以任意打乱,然后后手可以执行若干次以下操作:交换两个相邻且互质的数。 先手希望字典序最小,后手希望字典序最大,最后序列会变成啥样?做法容易发现对于不互质的一对数,相对位置永远不变。 我们让不互质的数之间连一条边,这样形成了图。 我们不妨从小到...
阅读(138) 评论(0)

[agc010f]Tree Game

前言发现树上博弈题很多。 大概思路都是你要想到一种简单不复杂的必胜必败态判断法。 再去证明两个东西就行了。 可能不是很正向思路。题目大意一颗树,每个节点上有一些石子,初始将一个小人放在某个节点上。 两人玩游戏,每次把小人所在节点上拿走一个石子(没有石子则游戏结束,当前操作者输),并把小人移动到相邻的一个节点。 问多少放小人的初始节点能使先手必胜。判断我们定义一个子树x是必胜的,当且仅当存在...
阅读(78) 评论(0)

[agc010d]Decrementing

前言博弈题,还挺有趣。题目大意一个正整数序列,gcd为1。 两人轮流操作,每次选择一个>1的数将其-1。 然后d是新序列的gcd,将所有数除以d。 不能操作者输。结论初始gcd为1,一定存在至少一个奇数。 如果有奇数个偶数,先手是一定必胜的。 先手先操作一个偶数变成奇数(此时场上就至少2个奇数了,然后此时有偶数个偶数),然后看后手表演: 后手将一个奇数变成偶数,先手就再把这个偶数变成奇数...
阅读(97) 评论(0)

[agc010c]Cleaning

前言这是一个与经典性质有关的题。题意一颗点权的树。 每次操作你可以选择两个不同的叶子(度数为1的点),满足其间路径任意点点权不为0,然后把这些点点权-1。 是否能通过任意次操作使得所有点点权为0?做法首先判掉n=2那么一定可以找到度数>1的做根。 我们假如把操作这样描述: 一颗点权边权树,初始边权均为0。 每次操作选择两个不同的叶子,将路径上边边权+1。 最后对于每个叶子,其相连所有边边...
阅读(103) 评论(0)

[agc011e]Increasing Numbers

前言1min了我还不会一点思路都没有这正常? orz题解。题意把大整数n拆成若干个上升数之和,最小化上升数的个数。 上升数即从最高位往最低位是一个不下降的序列。做法发现任意上升数能表示成全1数的和。 如果你允许0的存在,那么每个上升数都能被拆成9个全1数的和。 全1数的位数假如是k,可以表示成10k+1−19\frac{10^{k+1}-1}{9} 刚好0是-1位,代入该式子也成立。 现...
阅读(182) 评论(0)

[agc011d]Half Reflector

前言推了一会儿发现很有趣哦。 没有看题解,可能做复杂了。题意一个长度为n的AB串。 每个位置实际是一个机器,机器有两种状态A和B。 每当一个球从左右某一端进入一个机器时,如果是A状态,就从同一端扔出去,否则从另一端扔出去。每次这样后机器会更改状态。 从最左端的机器左端扔一个球,最后一定会从最左或最右弹出。 问从最左端依次扔k个球,最后AB串长啥样。做法不妨先表示成01串,A是1。 从左端...
阅读(129) 评论(0)

[agc011c]Squared Graph

前言很简单的计数套路。 没看过题解我有可能做复杂了。题意不想讲。做法先讲原图孤立点统计贡献,接下来讨论的所有点均不孤立。 我们想要统计一个联通块,可以统计特征点的个数。 即对于一个x.y,如果其是特征点,不存在与其联通的一个点t.u满足t<xt<x或x.z满足z<yz<y。 容易发现特征点第一维只能是原图中其所在联通块的最小编号点。 第二维如果也是最小编号点,显然也是可以的。 还有一种情...
阅读(152) 评论(0)
809条 共54页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:295589次
    • 积分:11176
    • 等级:
    • 排名:第1594名
    • 原创:805篇
    • 转载:4篇
    • 译文:0篇
    • 评论:197条
    最新评论
    文章分类