自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

自己选择的路,就算跪着也要走完!

  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 【JZOJ 5296】【清华集训2017模拟】Sequence

Solution发现,那个条件2其实没有用,可以用主席树预处理一下,转为数值在x,y之间, 那么这题就变成了求二维平面上的第k大, 这个用整体二分即可,复杂度:O(nlog(n)2)O(n\log(n)^2)Code#include <cstdio>#include <cstdlib>#include <algorithm>#define fo(i,a,b) for(int i=a;i<=

2017-08-19 09:34:04 439

原创 【JZOJ 5295】【清华集训2017模拟】Create

DescriptionSolution题目有一个比较显然的性质:因为我们不停的把连续的一段变成一个数的话,那么全局不同的数会越来越少;换句话说,就是如果我们在区间修改时,对于一个数都相同的区间我们才能修改,这样均摊下来复杂度并不是很高,所以,现在的问题就变成了:如何快速求一段数相同的区间内对答案的贡献,设这个区间的值为c,那么只有v小于等于c的三元组才有可能有贡献, 而贡献为多少,则是这个区间被这

2017-08-18 21:40:47 478

原创 【JZOJ 5284】【清华集训2017模拟】超级翻转

DescriptionSolution先枚举一个终点,跑出起点到终点的任意一条简单路径, 我们发现,只要我们在这条路径上的一个位置绕一个圈,这条路径其实就改变了, (比如:原来是(2,2)->(2,3),绕一圈是(2,2)->(2,3)->(1,3)->(1,2)->(2,2)->(2,3)) 因为经过两次的边就等于没走嘛,所以上面这个例子相当于把原路径的这个位置搞凸起来, 又因为题目只要可

2017-08-16 23:11:16 503

原创 【JZOJ 5282】【清华集训2017模拟】等差划分数

DescriptionSolution这种题肯定是要差分的, 这样就变成了:求一段区间中,至少能分成多少段,使得每段和相同,每段的开头允许挂一个不同的; 那么这个用线段树即可, 对于每个区间,记录它右/左边有多少个不相同的数,同时还要记录一下这个区间是否相邻两数都不同,合并时特判掉一些情况即可,Code#include <cstdio>#include <cstdlib>#include

2017-08-16 22:56:27 493

原创 【JZOJ 5272】神奇的重复序列

DescriptionSolution枚举两字符串的开头,暴力往后扫大家应该会做吧, 设两字符串开头为x,y(x<y)x,y(x<y),设k=y−xk=y-x 我们发现,如果对于多个位置,如果它在所在串的相对位置%k是相同的,那么这几个位都必须相同, 比如:两串的开头为1、3,k=2,那么,1、3、5、7等都必须相等, 换句话说,就是在两串相交时,会有一定的周期性, (大家写两个数据看看就

2017-08-15 21:41:22 413

原创 【JZOJ 5276】【清华集训2017模拟】神奇的玩具

DescriptionSolution我说这题是暴力剪枝你信不信! 事实如此: 暴力快如闪电: 标准的暴力谁都会, 剪枝1:因为每个礼物只有两商店卖,所以一个不选,另一个就一定选了, 剪枝2:上面那个剪枝保证了每个礼物都会买到,那么每个礼物的代价一定是价格小的那个,这时一定的,如果代价小的不选,那么代价就一定会增加,这个可以用最优性剪枝Code#include <cstdio>#incl

2017-08-15 16:53:49 484

原创 【技巧】可撤销贪心

简介贪心是个好方法,常常出现在OI竞赛中,常常很诡异, 同时也作为一种实用的水法,RP好可以水到很高分, (话说我GDKOI2017好像用一个最后5min打出的贪心水了T4 70分耶)当然,普通的贪心不总是最优的,这时就要用到可撤销贪心了,套路可撤销贪心一般是在一轮贪心后,在删除原来的数之后,再加入一个数,如果要选这个数,就要算上撤销一轮操作的代价(这个代价可能为负),例题里会有详细讲解: 【

2017-08-14 22:52:58 1072

原创 【JZOJ 5271】神奇的救火现场

DescriptionSolution这题线性的方法,这里讲的是O(nlog(n))O(n\log(n))的可撤销贪心, 先把车和栓放在一起排序,对车、栓分别开一个堆, 要想满足贪心是可撤销的,那么一个点在被计算时,如果它被之前的点匹配过,那么它算答案时,就得算上撤销之前选择的代价(可能为负数),Code#include <iostream>#include <cstdio>#includ

2017-08-14 22:39:34 915

原创 【黑科技】用树状数组解决区间修改查询问题

遇到区间查询修改,相信大家一般用的都是线段树, 但常数远远没有树状数组优秀, 这里就来谈谈如何用树状数组解决区间问题 (同时可以用于多维问题)首先,相信大家一定会用树状数组做区间加,单点查询的问题, 差分一下即可;那么对于区间查询,怎么做呢? 要做到区间查询,就要能计算一个点的值对后面的值的影响, 多开一个数组F[i]=(n-i+1)*f[i], 差分的话当然是这个点的值对后面的每个点

2017-08-14 21:55:38 620

原创 【JZOJ 5270】神奇的矩阵

DescriptionSolution把b排序,从小到大插入,绝对值就没用了, 所以就可以容易算出它在答案中乘上的系数, 设f[i][j]表示以i,j作为左上角,这个k*k的矩形里有多少个1(有多少个数已被加入), 那么点x,y作为+出现的次数就是以x-k+1,y-k+1作为左上角的k*k矩形内f的和,这个用线段树套线段树很容易想到,但常数太大了, 我用的是树状数组(没错,用树状数组区间加区

2017-08-14 21:05:07 485

原创 【JZOJ 5250】【GDOI2018模拟8.11】质数

Description设函数f(d)f(d)表示d的质因数个数,f(1)=0 求∑i=1n2f(i)\sum_{i=1}^n2^{f(i)}Solution显然,式子可以写成这样: ∑i=1n∑d|i[gcd(d,id)=1]\sum_{i=1}^n\sum_{d|i}[\gcd(d,\frac{i}{d})=1] (大家感受一下) 再变: ∑d=1n∑i=1⌊nd⌋[g

2017-08-12 20:29:13 425

原创 【BestCoder】小C的倍数问题

Description根据小学数学的知识,我们知道一个正整数x是3的倍数的条件是x每一位加起来的和是3的倍数。反之,如果一个数每一位加起来是3的倍数,则这个数肯定是3的倍数。现在给定进制P,求有多少个B满足P进制下,一个正整数是B的倍数的充分必要条件是每一位加起来的和是B的倍数。Solution本题的ans为p-1的因数个数, 为什么呢?如果b满足条件,那么也要满足:pxmodb=1p^x\mod

2017-08-12 19:25:39 392

原创 【JZOJ 5249】【NOIP2017提高A组模拟8.10】文本编辑器

DescriptionSolution这道题用Splay是一道版子题, 但很遗憾,只有90分, 那O(n)怎么做呢?我们发现,对于全局的数,可以用2个栈,1个队列表示: 设两个光标位置为l,r, 两个栈分别表示l前面的数、r后面的数,队列表示l~r中间的数, 那么对于简单的移动操作,直接做即可, 对于翻转,我们发现,直接打上标记即可,在光标移动的时候判断一下即可, 当然还有特殊情况:当

2017-08-10 17:24:58 419

原创 【JZOJ 5248】【NOIP2017提高A组模拟8.10】花花的聚会

DescriptionSolution这一题很显然可以想到树形DP嘛, 设fxf_x表示x走到根,最小的代价, 对于每个点,能转移过来的,只有在它上面能走到的,那么直接用数据结构记录一下上边的最小值即可, 用RMQ代码最短复杂度:O(nlog(n))O(n\log(n))Code#include <cstdio>#include <cstdlib>#include <cmath>#def

2017-08-10 17:15:02 468

原创 【JZOJ 5241】【GDOI2018模拟8.8】苹果和雪梨

Description作为新开的水果连锁店店员,你需要把总部发给你的苹果和雪梨分组出售,从而获得最 大利润。 总部发给你的水果包括: n 个苹果,质量分别为a1,a2…an n 个雪梨,质量分别为b1,b2…bn。 你卖的是盒装水果,一盒水果包括一个苹果和一个雪梨,苹果的质量乘上雪梨的质量就 是这盒水果的价钱。把苹果雪梨配对分成总共n 盒水果后,你要把价格最高的一盒返还给 水果店总部,

2017-08-09 11:25:07 1004

原创 【DAG】寻找桥边、必经点(支配树)

在许多题目中,常常都需要一下操作:给出S、T,找一个桥边(必经点)Solution1先从S走到T,记录下路径(包括点和边),并且标记一下, 再从S开始走,不过这回不走上面标记过的边(不是点), 走完以后,所有访问过的点会与上面标记的路径上的点有部分重合, 我们发现,重合的点中,最右边的(也就是路径中靠后的)设为X,那么,S~X这条路径上的边都不是桥边,反而,在标记的路径上,X的出

2017-08-07 22:37:12 1640

原创 【JZOJ 5239】 【GDOI2018模拟8.7】图的异或

DescriptionSolution答案显然是统计所有的简单环,把它的异或值加线线性基, 简单环则在dfs树上找返祖边, 最后统计线性基答案即可, 这里要用到线性基的性质: 把所有能组合出的数写出, 对于每一个二进制位,它要不一定为0,要不作为0出现的次数和作为1出现的次数相等, 所有用这个性质,直接统计答案即可。复杂度:O(nlog(260))O(n\log(2^{60}))Code

2017-08-07 22:29:11 528

MathJax basic tutorial and quick reference - Mathematics Meta Stack Exchange

markdown的各种用法,希望对大家有用

2016-07-04

空空如也

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

TA关注的人

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