自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

forever_shi的博客

但行好事,莫问前程;行你所行,无问西东! AFO (现在是ACMer)

  • 博客(15)
  • 收藏
  • 关注

原创 洛谷3960 列队 NOIP2017 动态开点线段树/Splay

题目链接题意:你现在有一个n*m矩阵,有q次操作,每次询问(x,y)位置的编号,(x,y)的起始编号是(y-1)*m+x。每次操作输出该位置的编号,并且拿出该编号,该行后面的向前补,然后对于最后一列向上补,最后把这个编号放在第n行第m列的位置。(n,m,q<=3e5)题解:这题想要用树形数据结构维护,但是发现空间不够。于是线段树就要动态开点,splay的话要把一段连续的编号缩成一个点...

2018-09-27 20:35:21 388

原创 天天爱跑步 洛谷1600 NOIP2016 树上差分 LCA

题目链接题意好像不是很容易说明白,自己看题目吧。题解:如今再做往年NOIP题目还是不怎么会啊。这题想了想没想出来,然后看了好多题解,又对着y_immortal大神的代码研究了好久,才有些明白,水平还是不行啊。首先我们把无根树转化为以1为根的有根树,dfs一边求出每个点的深度和他的倍增父节点数组。我们把一条路径看成两部分,一部分是向起点与终点的LCA走的,一部分是向下走的。我们发现,对于向上...

2018-09-25 21:26:41 189

原创 洛谷4140 BZOJ3813 奇数国 欧拉函数 线段树 状压

题目链接 题意: 求区间积的ϕϕ\phi值。题解: number∗x+product∗y=1number∗x+product∗y=1number*x+product*y=1可以转化为gcd(number,product)=1gcd(number,product)=1gcd(number,product)=1,即求ϕ(product)ϕ(product)\phi(product) 题目保...

2018-09-17 11:46:41 167

原创 洛谷 1666 前缀单词 trie树 dp

题目链接 题意: 给你n个字符串,每次选出若干个字符串形成一个集合,问有多少个集合满足集合中的任何一个字符串都不是另外一个字符串的前缀。空集也一定是满足条件的。保证不会出现两个相同的字符串。题解: 也是NOIP模拟赛出现的题。当时想到了建trie树之后dp(我也忘了是怎么想到的了),但是当时我感觉算互相不为前缀可能不太好算,于是就在考虑用集合总数减去存在互为前缀的集合,结果发现自己dp计...

2018-09-15 13:34:34 249

原创 洛谷 2988 [USACO10MAR]考试Test Taking

题目链接题意:你有n个判断题,每题只可能是对或者错的一种,你事先知道了最终答案是对的题目数一定是下列若干种可能的某一个,求如何安排每一道题的选项能在最坏的情况下得到最多的分?题解: NOIP模拟赛的题目,被各位大神随便切,我却当场没想出来。 我们把正确答案是对号的题设为1,正确答案是错误的题设为0,这题首先是会发现,直接贪心地全选1或全选0并不一定是最优的,反例是在有8个题,最后可能是...

2018-09-14 22:06:55 218

原创 洛谷1852 BZOJ2144 跳跳棋 思维题

题目链接题意: 坐标轴上告诉你三个互不相同的位置作为三个棋子的起点,再告诉你三个不同的位置作为三个棋子的终点,每次操作可以让一个棋子以另一个棋子为轴跳到对称位置,并且只能跳过一个棋子,问你是否能最终是否能到达目标状态,如果能输出最少多少次到达。题解: 感觉这题确实不好想啊,没看题解的话我只会搜索。。。 这题我们考虑对于一种状态(x,y,z),我们设x,y,z是递增的,我们可能的操作只...

2018-09-12 16:31:57 413

原创 洛谷4009 汽车加油行驶问题 分层图最短路

题目链接 题意: 有一个n*n的网格,每次车沿格子走一格,有些格子有加油站,路过加油站必须加油,可以额外花c元在任意一个点加油,每次加了油之后能走k步,向上或者向左走要额外花b元,问从(1,1)到(n,n)的最小花费。题解: 分k+1层建图,表示上次加了油之后当前已经走了k步,我们规定层数为0-k,图上的边权根据题意都比较容易确定,这里就简单介绍一下建边方法。对于每一层,如果到了一个加油...

2018-09-08 15:15:05 346

原创 洛谷4011 孤岛营救问题 状压 最短路 分层图

题目链接 题意: 有一个迷宫,一开始在左上角,要走到右下角,相邻的两个格子有些不可通过的墙,还有一些门需要有了对于的那一类钥匙才能通过。求1到n的最短路。n*m<=100,门和墙总数不超过150,迷宫中的钥匙不超过14,同类的钥匙可能有多个。题解: 建分层图,建图的方式是根据已有的钥匙状态建2^k层图,对于每层,如果有一个有钥匙并且当前层还没有这一类钥匙的位置,那么从这个位置向加上...

2018-09-06 20:04:16 311

原创 洛谷4180 BZOJ1977 严格次小生成树 学习笔记

题目链接 题意:求一个图的严格次小生成树题解: 首先求出最小生成树,并且标记所有在最小生成树上的边。然后考虑枚举每一条不在最小生成树上的边,如果它连接了x与y,那么在树上x到lca(x,y)到y的位置就会形成了一个环,那么我们找到这一部分的严格小于当前要加入生成树的边中最大的一条,我们就把那条换成当前边,然后尝试更新答案,维护的话只需要规定一号点是根,然后维护树上每个点向上2i2i2^i个...

2018-09-06 18:12:29 180

原创 洛谷2619 BZOJ2654 Tree 1 二分+最小生成树

题目链接 题意: 给你一个无向带权连通图,每条边是黑色或白色。让你求一棵最小权的恰好有need条白色边的生成树。 题解: 看的别人的题解。 做法是二分一个权值,可正可负,让所有白色边加上这个权值,然后再做最小生成树,显然这个全权值是可以二分的。 然后最后每次二分得到的结果再加上那些减去的权值就是这种最小生成树的权值和了。 另外权值相同的时候据说需要先选白色边。代码:#in...

2018-09-05 19:43:54 327

原创 洛谷1484 BZOJ2151 种树 贪心+堆

题目链接 洛谷题意: 给你一个长度为n的序列,每个位置有一个权值,相邻位置不能同时被选,问你选k个数得到的最大权值是多少(可以选的数不足k个)。BZOJ题意:把洛谷的序列改成环,并且要判断无解情况,但是必须选足k个数。题目差不多。 这是一个比较经典的题目,这题不难想出可以n^2dp,但是好像没法优化。我们考虑贪心,记录每个点左侧和右侧的点是哪个点,然后记录每个点的点权和每个点是否被考...

2018-09-05 16:26:11 190

原创 洛谷3498 BZOJ2081 Beads 哈希

题目链接 题意: 给你一个序列,对于i∈[1,n]i∈[1,n]i\in[1,n]判断每i个组成若干个序列最多有多少个不同的序列,并且我们认为正序和倒序是相同的,例如认为(1,2)和(2,1)相同的,还有输出有多少个最长的序列和这些最长序列都是由哪些i得来的。题解: 用哈希前缀和来判断相同不难想到,但是发现这个认为正序和倒序是相同不太好办,一个想法是对哈希的正序和倒序前缀和再哈希,但是每...

2018-09-04 15:16:38 174

原创 洛谷3538 BZOJ2795 A Horrible Poem 哈希 线性筛素数

题目链接题意:给出一个由小写英文字母组成的字符串S,再给出q个询问,要求回答S某个子串的最短循环节。题解: 我感觉网上有些题解在乱说,并不是n是循环节,n*k也一定是循环节的,要满足n*k|len才行的。 而且感觉好多做法代码对但是解释是不对的。 我们发现,对于一个区间,可能的循环节长度一定是原区间长度的约数,但是直接枚举约数复杂度是根号级别的,复杂度还是高了。我们考虑优化,我们发现...

2018-09-03 19:18:05 221

原创 BZOJ3916 friends 哈希

题目链接题意: 游戏规则是有一个字符串,把它复制之后放到原字符串的后面,之后在这个字符串随机插入一个字母,得到一个新的字符串。现在给你一个字符串,问你可不可能是经过游戏的操作得到的。题解: 就是哈希前缀和来判断字符串是否相同。思维不难,但是想提醒自己注意一下这种哈希前缀和的写法,注意哈希前缀和相减时的下标和乘的基数的指数。代码://正经的哈希不知道怎么挂了,自然溢出这种东西...

2018-09-02 21:44:35 396 1

原创 洛谷2243 电路维修 广搜+双端队列优化

题目描述 题意不太容易说清楚,还是看链接吧。题解: 首先感觉是广搜求最短路的题目。我一开始是没想好怎么建图的,感觉直接乱做复杂度好像很爆炸。这个题的建图还是有点巧妙的,建图方法是把格点看作是图上的点,原来的斜线看作是两点间连边权为0的边,每个格子除了原来的斜线的另一条对角线的两点之间连一条边权为1的边,表示需要进行一次旋转。建好图之后可以开始bfs了,但是这样的复杂度不够优秀,我们使用...

2018-09-01 21:49:49 522

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除