当前搜索:

[agc004e]Salvage Robots

前言本题的关键是想到让出口和矩形动,而不是机器人动,只要记录出口的位移矩形,便可以知道哪个区域的机器人已经飞出去了。题目大意一个网格图,有若干机器人,还有一个出口。 操作一系列指令让机器人上下左右,走出矩形就死,进入出口则得救。 最多救多少机器人?DP不妨认为矩形和出口会动。 我们设f[u,...
阅读(311) 评论(1)

[agc004d]Teleporter

前言贪心题,我一开始想错了,最终算法其实很简单。题目大意n个点形成环套树,改变最少数量的点的出边,使得任意点出发走k步能走到1。 初始满足任意点能走到1。做法显然1一定要自环。 然后可以贪心了,自下往上做,满k要断出边。 详见代码。#include<cstdio> #includ...
阅读(194) 评论(0)

[agc004c]AND Grid

前言构造题,我又不是很会…… 太蠢了。题目大意给你一个网格图,有一些格子涂了紫色。 请你构造出两个网格图,其中一个都涂了红色,且四联通,另一个都涂了蓝色,且四联通。 要求紫色的位置必须红和蓝,其余都不能同时涂红和蓝。 保证边界没有紫色。做法不看边界奇数都涂红,偶数都涂蓝。 然后对于红图第...
阅读(198) 评论(0)

[agc003f]Fraction of Fractal

做法注意到上下左右都联通答案是1,都不连通答案是黑格数的次幂。 判掉后发现只有一边联通很好做,矩阵乘法上就行了。#include<cstdio> #include<algorithm> #define fo(i,a,b) for(i=a;i<=b;i++) usin...
阅读(195) 评论(0)

[agc003e]Sequential operations on Sequence

前言利用了经典性质的题。题目大意有一个数字串S,初始长度为n,是1 2 3 4 …… n。 有m次操作,每次操作给你一个正整数a[i],你先把S无穷重复,然后把前a[i]截取出来成为新的S。 求m次操作后,每个数字在S中出现的次数。做法考虑这样一个过程,solve(x,l)表示在第x次操作后的...
阅读(297) 评论(0)

[agc003d]Anticube

前言简单贪心,最难的部分居然是分解质因数。题目大意从一个10^10的数列里选出最多的数,使两两乘积不为立方数。做法把每个数最简表示,即每个质因数的指数都模3。 还要求出这个最简数的补数,也就是满足最简的与其乘积为立方数的数。 对于数列中一个数集团和它的补数集团,贪心的选择较大的那个。 如果一...
阅读(319) 评论(0)

[agc002f]Leftmost Ball

前言小清新计数题。题意n种颜色每种颜色有k个球(这n种颜色不含白色),排成一行,把每种颜色第一个球涂成白色。 问颜色序列方案数。DP要求任意后缀0的个数不比颜色种类数多。 不妨设dp表示f[i,j]已经用了i种颜色,放了i-j个0。 每次可以在最前面放0。 也可以新加一种颜色,为了不计重最...
阅读(203) 评论(0)

[agc002e]Candy Piles

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

Astar百度之星2017转圈记

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

[agc002d]Stamp Rally

前言简单套路题。题目大意一副连通图,每次询问从两个点x和y出发走出两条路径,希望至少经过一次的点数量等于z,经过的边最大编号最小是多少。简单题假如可以暴力,你可以按编号从小到大加入边,如果x和y不在一个联通块,能经过的点等于两个所在联通块大小的和,否则等于所在联通块大小,找到第一次大于等于z的位置...
阅读(233) 评论(0)

[agc008d]K-th K

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

[agc009e]Eternal Average

前言需要发现性质的dp。 重点在于发现性质。题意请构造若干k叉树,使得每颗均有n+m个叶子,有n个叶子点权为0,m个叶子点权为1,对于非叶子点权为儿子点权的平均数。 问最多构造多少k叉树,使得任意两颗根节点点权不同?DP令n个叶子的深度为x1~xn,同理m个叶子的深度为y1~ym。 发现根节...
阅读(377) 评论(0)

[agc009d]Uninity

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

[agc009c]Division into Two

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

[agc009b]Tournament

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

[agc010e]Rearranging

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

[agc010f]Tree Game

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

[agc010d]Decrementing

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

[agc010c]Cleaning

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

[agc011e]Increasing Numbers

前言1min了我还不会一点思路都没有这正常? orz题解。题意把大整数n拆成若干个上升数之和,最小化上升数的个数。 上升数即从最高位往最低位是一个不下降的序列。做法发现任意上升数能表示成全1数的和。 如果你允许0的存在,那么每个上升数都能被拆成9个全1数的和。 全1数的位数假如是k,可以表...
阅读(285) 评论(0)
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 39万+
    积分: 1万+
    排名: 1456
    最新评论
    文章分类