九月过渡
文章平均质量分 51
QTY_
衡中信奥的渣
愿追求卓越,不断前行;只为爱&梦想,不曾停怯
展开
-
入坑 可持久化线段树——主席树
主席树主要用来处理历史版本查询。 这一篇我只想想先说说对于区间Kth的处理。 如果把区间的每一位都视为一次更新(可以视为数据在0~inf范围的一次更新)求区间Kth就转变为某个元素在某段历史中出现的Kth那么一个值是多少。 每次修改,有别于普通线段数,完全新造一棵树(时空间都不允许)。 这也就是主席树有别于于普通线段数的地方:每次修改都是在原来的基础上,加了一条链。 对于没更新的子节点原创 2017-09-26 21:06:45 · 392 阅读 · 0 评论 -
神奇DP [HNOI2004] 打砖块
问题 E: HNOI2004] 打砖块 时间限制: 1 Sec 内存限制: 128 MB 题目描述 【题目描述】在一个凹槽中放置了n层砖块,最上面的一层有n块砖,第二层有n-1块,……最下面一层仅有一块砖。第i层的砖块从左至右编号为1,2,……i,第i层的第j块砖有一个价值a[i,j](a[i,j]<=50)。下面是一个有5层砖块的例子:如果你要敲掉第i层的第j块砖的话,若i=1,你可以直接原创 2017-09-12 17:14:06 · 365 阅读 · 0 评论 -
并查集 [Scoi2010]游戏
问题 B: [Scoi2010]游戏 时间限制: 1 Sec 内存限制: 128 MB 提交: 44 解决: 19 [提交][状态][讨论版] 题目描述 Description lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示。当他使用某种装备时,他只能使用该装备的某一个属性。并且每种装备最多只能使用一次。原创 2017-09-20 16:12:47 · 342 阅读 · 0 评论 -
概率+树规 熟练剖分
根节点不一定是1,但是是一个确定的点,看谁不是儿子就行了。。 这道题我们考虑从儿子推到根。设f[i][j]表示以i为根的子树中,最长轻链长度为j的概率。 因为每一个son被选为重儿子的概率相同,且重儿子对父亲贡献和轻儿子不同,所以要每一个点为重儿子,之后挨个枚举每个儿子。这个效率是N^2,然后要枚举链的长度,如果枚举到size[root],相当于N^3,废掉了。。但只要枚举到size[son]+原创 2017-09-28 20:58:32 · 555 阅读 · 0 评论 -
数学+图论 建造游乐场
只要求出n个点能构成多少个不同的欧拉图即可。然后搞每两个点(对其增加或减少一条边)即有C(n,2)×f[n]个方案. 设n个点不重复的欧拉图个数为f[n],设所有点度数均为偶数(但不一定联通)的图的个数为g[n]. g[i]=2^C(i-1,2).刨去一个点,其他点对之间可连可不连一条边的总方案数。但方案中一定有些点的度数是奇数,而刚刚刨掉的点就派上了用场,那个点有唯一一种方案使图中所有度数为奇原创 2017-09-28 20:14:19 · 411 阅读 · 0 评论 -
乱搞+STL平衡树 序列
考虑两种情况:1,q=1;2,q>1;O(N)枚举一遍即可。可以发现最长不会超过log。那么枚举起点的效率为N*logN?暴力可过?(其实这就是正解。。)只要枚举a[i]和a[i+1],算出最小公比。这里设k=a[i]/a[i+1] (假设a[i]>a[i+1])k=p1^x1*p2^x2…..。求出g=gcd(x1,x2….);最小q=p1^(x1/g)*p2^(x2/g)…..。 其实,已原创 2017-09-28 19:51:22 · 422 阅读 · 0 评论 -
HASH+平衡树 [JSOI2008]火星人prefix
问题 I: [JSOI2008]火星人prefix 时间限制: 2 Sec 内存限制: 162 MB 题目描述 火星人最近研究了一种操作:求一个字串两个后缀的公共前缀。比方说,有这样一个字符串:madamimadam, 我们将这个字符串的各个字符予以标号:序号: 1 2 3 4 5 6 7 8 9 10 11 字符 m a d a m i m a d a m 现在, 火星人定义了一个函数原创 2017-09-28 19:39:09 · 307 阅读 · 0 评论 -
大暴搜 chess
仔细读题,会发现吃掉敌人点对方案数的贡献很神奇。如果走的空格相同,而走的敌人点不同,对答案无贡献,而对于走的空格相同,但一种走了敌人点,另一种没走,算两个方案。。。。sb出题人语文简直是和我学的。。。。 可见对于能相互到达的敌人点我们该缩点。也就是说,我们对与这一坨敌人点相连的空格互相连上双向边。(可以互相到达),并把每两个互相到达的空格连上边。 然后跑spfa,加一个当dis[i]==dis[原创 2017-09-19 18:46:50 · 415 阅读 · 0 评论 -
数学 方程的解
细节巨多的数学题。首先解出一组x最小的正整数解->ymax,同理求出ymin。就求出了解的个数。 那么我来说说巨多的细节。 1,解不出一组解来。 2,a=0||b=0时,若另一个变量最小解小于零,无解;若能解出,就有无数组。 3,a,b异号。#include<iostream>#include<cstdlib>#include<cstdio>#include<cstring>#inc原创 2017-09-11 11:38:24 · 473 阅读 · 0 评论 -
树DP 树上染色
[HAOI2015]树上染色 时间限制:1 s 内存限制:256 MB 【题目描述】 有一棵点数为N的树,树边有边权。给你一个在0~N之内的正整数K,你要在这棵树中选择K个点,将其染成黑色,并将其他的N-K个点染成白色。将所有点染色后,你会获得黑点两两之间的距离加上白点两两之间距离的和的收益。问收益最大值是多少。 【输入格式】 第一行两个整数N,K。 接下来N-1行每行三个正整数fr原创 2017-09-11 11:10:25 · 415 阅读 · 0 评论 -
set+链表 【POJ Challenge】生日礼物
2288: 【POJ Challenge】生日礼物Time Limit: 10 Sec Memory Limit: 128 MB Submit: 841 Solved: 255 [Submit][Status][Discuss] Description ftiasch 18岁生日的时候,lqp18_31给她看了一个神奇的序列 A1, A2, …, AN. 她被允许选择不超过 M 个连续的原创 2017-09-20 18:05:22 · 287 阅读 · 0 评论 -
DP Cleaning Up 打扫卫生
问题 A: Cleaning Up 打扫卫生 时间限制: 1 Sec 内存限制: 128 MB 题目描述 [Usaco2009 Mar]Cleaning Up 打扫卫生 Description 有N头奶牛,每头那牛都有一个标号Pi,1 <= Pi <= M <= N <= 40000。现在Farmer John要把这些奶牛分成若干段,定义每段的不河蟹度为:若这段里有k个不同的数,那不河蟹原创 2017-09-21 19:17:48 · 366 阅读 · 0 评论 -
线段树 高速公路(road)
问题 C: 高速公路(road) 时间限制: 2 Sec 内存限制: 256 MB 题目描述Y901高速公路是一条重要的交通纽带,政府部门建设初期的投入以及使用期间的养护费用都不低,因此政府在这条高速公路上设立了许多收费站。 Y901高速公路是一条由N-1段路以及N个收费站组成的东西向的链,我们按照由西向东的顺序将收费站依次编号为1~N,从收费站i行驶到i+1(或从i+1行驶到i)需要收取V原创 2017-09-21 19:27:50 · 335 阅读 · 0 评论 -
三分算法
类似于二分,只不过三分应用于单峰函数。 设l,r,mid,mmid. mid=l+(r-l+1)/3;mmid=l+(r-l+1)*2/3; 说白了mid,mmid是区间[l,r]的三等分点。 如果ans[mid]>ans[mmid],那么说明答案一定在mmid左侧。 同理,ans[mid] < ans[mmid]则答案在mid右侧。 这样就可以不断逼近峰值了。 典型题目:宅男计划,扔原创 2017-10-01 17:56:36 · 562 阅读 · 0 评论 -
整体二分
相对于普通二分,整体二分用于处理较多询问.如果用普通二分去处理询问,效率将是O(Q*log×f(?))多出来的Q将无法让人承受。因而有了整体二分。整体二分与二分的最大区别就是对所有询问一同处理。所谓的一同处理,是指省去了二分中的冗余部分,上一个询问二分过这个区间,而当前询问又二分了一次,整体二分保证了没有这个冗余。具体而言,当前带着所有询问传到了一个区间,整理得到一部分询问满足左区间,另一部分满足右原创 2017-10-01 20:52:59 · 381 阅读 · 0 评论 -
模拟 [bzoj 4582] Diamond Collector
这道是权限,所以我粘个题面Time Limit: 10 Sec Memory Limit: 128 MB Submit: 198 Solved: 134 [Submit][Status][Discuss] Description Bessie the cow, always a fan of shiny objects, has taken up a hobby of mining di原创 2017-09-21 21:26:09 · 365 阅读 · 0 评论 -
模拟 飞(fly)
问题 C: 飞(fly) 时间限制: 1 Sec 内存限制: 32 MB 题目描述 liu_runda决定提高一下知识水平,于是他去请教郭神.郭神随手就给了liu_runda一道神题,liu_runda并不会做,于是把这个题扔到联考里给高二的做. 郭神有n条位于第一象限内的线段,给出每条线段与x轴和y轴交点的坐标,显然这样就可以唯一确定每一条线段. n条线段和y轴交点的纵坐标分别为1,2原创 2017-09-26 19:00:54 · 568 阅读 · 0 评论 -
二分图+贪心优化 [2009国家集训队]最大收益
问题 B: [2009国家集训队]最大收益 时间限制: 1 Sec 内存限制: 259 MB 题目描述 给出N件单位时间任务,对于第i件任务,如果要完成该任务,需要占用[Si, Ti]间的某个时刻,且完成后会有Vi的收益。求最大收益。 N≤5000,1 ≤ Si ≤ Ti ≤ 108,1 ≤ Vi ≤ 108。 澄清:一个时刻只能做一件任务,做一个任务也只需要一个时刻。输入 第一行一个整数原创 2017-09-30 11:44:34 · 398 阅读 · 0 评论 -
三分+贪心 [Ahoi2014]宅男计划
传送门 一看显然是贪心(首先要把所有性价比低的食品扔掉,也就是保质期短还贵的东西)。但接下来我就懵了。。。居然要三分 据说没什么人能证出来。。(据说出题人要别人猜结论。。)既然说是,那我就信了。→_→ 三分总共要多少次外卖。然后从便宜的食品开始买(把过期的过掉)。那么该如何记录呢。既然我们知道要来多少次,那么每一次买的都是最优的话,那么每次买的是一样的。这样我们可以记录下已经把前多少天的食物买原创 2017-10-01 17:50:50 · 501 阅读 · 0 评论 -
单调队列 JC loves Mkk
不想粘题面,传送门首先二分答案x, 设a[i]=v[i]-x;sum[i]为a[i]前缀和。只要保证sum[r]-sum[l-1]为偶数,范围L~R,切>=零即可。 考虑用单调队列,维护两个,一个代表选偶数,另一个奇数,奇偶搞定。 运用单调队列性质,那两个也就搞定了。 最后还是要考虑恶心的精度。二分还是要用long double,防止炸精,只要在check时确定了分母即可。因为最后二分出了总原创 2017-09-22 15:59:24 · 379 阅读 · 0 评论 -
树状数组 [Usaco2010 Nov]Cow Photographs
问题 G: [Usaco2010 Nov]Cow Photographs 时间限制: 1 Sec 内存限制: 64 MB 题目描述 奶牛的图片 Farmer John希望给他的N(1<=N<=100,000)只奶牛拍照片,这样他就可以向他的朋友炫耀他的奶牛.这N只奶牛被标号为1..N. 在照相的那一天,奶牛们排成了一排.其中第i个位置上是标号为c_i(1<=c_i<=N)的奶牛.对于奶牛的站原创 2017-09-30 11:55:42 · 598 阅读 · 1 评论 -
暴搜 bzoj1052 覆盖问题
问题 B: 覆盖问题 时间限制: 1 Sec 内存限制: 256 MB 题目描述Description 某人在山上种了N棵小树苗。冬天来了,温度急速下降,小树苗脆弱得不堪一击,于是树主人想用一些塑料薄 膜把这些小树遮盖起来,经过一番长久的思考,他决定用3个L*L的正方形塑料薄膜将小树遮起来。我们不妨将山建 立一个平面直角坐标系,设第i棵小树的坐标为(Xi,Yi),3个L*L的正方形的边要原创 2017-09-21 19:37:27 · 357 阅读 · 0 评论 -
无旋treap启发式搜索 [HNOI2012]永无乡
问题 B: [HNOI2012]永无乡 时间限制: 1 Sec 内存限制: 128 MB 提交: 50 解决: 28 [提交][状态][讨论版] 题目描述 永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己的独一无二的重要度,按照重要度可 以将这 n 座岛排名,名次用 1 到 n 来表示。某些岛之间由巨大的桥连接,通过桥可以从一个岛 到达另一个岛。如果从岛 a 出发经过若干座(含原创 2017-09-24 19:43:55 · 387 阅读 · 0 评论 -
重构树 Fiolki
问题 B: Fiolki 时间限制: 3 Sec 内存限制: 128 MB 题目描述 化学家吉丽想要配置一种神奇的药水来拯救世界。 吉丽有n种不同的液体物质,和n个药瓶(均从1到n编号)。初始时,第i个瓶内装着g[i]克的第i种物质。吉丽需要执行一定的步骤来配置药水,第i个步骤是将第a[i]个瓶子内的所有液体倒入第b[i]个瓶子,此后第a[i]个瓶子不会再被用到。瓶子的容量可以视作是无限的原创 2017-09-03 21:15:35 · 317 阅读 · 0 评论 -
数学 砍树
Σ (向上取整(a[i]/d)*d-a[i])<=k Σ(向上取整(a[i]/d))<=k+Σa[i](总称为C) Σ向上取整(a[i]/d)<=向下取整(C/d); f(d)=Σ向上取整(a[i]/d),g(d)=向下取整(C/d) 易知两个函数都是单调不上升的。具体来说都是分段的,那么对于g(d)的同一段上,段尾的d值一定优于段首值(f(d)也单调下降)。 那么枚举每一个段尾的d值,暴原创 2017-09-15 19:02:35 · 529 阅读 · 0 评论 -
单调队列 bzoj3126 [Usaco2013 Open]Photo
传送门,貌似是权限题,然而我是OwO如果我们处理每一个点,那这个点可以从前一段能转移的地方转移过来。 因为每个区间只有一个,所以上一个必须是从之前自己不属于的区间转移过来。也就是左侧所有右端点没到自己的区间左端点的最小值(再小就不保证这些区间里定有一个点了),最右就是所有右端点在自己右边的区间左端点的最小值(一个区间最多有一个)。然后单调队列推入点,找到符合左右区间要求的最大值(套路)即可。最后答原创 2017-09-23 13:39:31 · 296 阅读 · 0 评论 -
二分图 crf的军训
二分图即可,也没必要拆点,其实只是把点视为两排,在左边一排向右边能连边的点连边(说白了就是左边点能放右边点后面),之后把右边点的link设为左边点。就这样。。考试时以为是dp,最后交了深搜。。。#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;int n原创 2017-09-23 09:08:54 · 269 阅读 · 0 评论 -
二分答案 [Usaco2014 Mar]Sabotage
问题 L: [Usaco2014 Mar]Sabotage 时间限制: 1 Sec 内存限制: 128 MB 题目描述 Farmer John”s arch-nemesis, Farmer Paul, has decided to sabotage Farmer John”s milking equipment! The milking equipment consists of a row原创 2017-09-14 15:21:18 · 611 阅读 · 0 评论 -
DFS 找硬币
问题 A: 找硬币 时间限制: 1 Sec 内存限制: 64 MB 提交: 144 解决: 43 [提交][状态] 题目描述 小蛇是金融部部长。最近她决定制造一系列新的货币。假设她要制造的货币的面值为x1,x2,x3… 那么x1必须为1,xb必须为xa的正整数倍(b>a)。例如 1,5,125,250就是一组合法的硬币序列,而1,5,100,125就不是。不知从哪一天开始,可爱的蛇爱上原创 2017-09-04 12:23:01 · 434 阅读 · 0 评论 -
数学 随rand
问题 A: 随 时间限制: 2 Sec 内存限制: 512 MB 题目描述 给出n个正整数a1,a2…an和一个质数mod.一个变量x初始为1.进行m次操作.每次在n个数中随机选一个ai,然后x=x*ai%mod.问m次操作之后x的取值的期望. 答案一定可以表示成a/b的精确分数形式.a和b可能很大,所以只需要输出a*(b^(10^9+5))模10^9+7的结果. 输入 第一行三个整数原创 2017-09-03 21:31:42 · 353 阅读 · 0 评论 -
dfs+数学? 单
问题 B: 单 时间限制: 2 Sec 内存限制: 512 MB 题目描述 单车联通大街小巷.这就是出题人没有写题目背景的原因. 对于一棵树,认为每条边长度为1,每个点有一个权值a[i].dis(u,v)为点u到v的最短路径的边数.dis(u,u)=0.对每个点求出一个重要程度.点x的重要程度b[x]定义为其他点到这个点的距离乘上对应的点权再求和. 即:b[x]=a[1]*dis(1,x)原创 2017-09-03 21:50:03 · 336 阅读 · 0 评论 -
bfs 大逃亡
问题 C: 大逃亡 时间限制: 1 Sec 内存限制: 256 MB 题目描述 给出数字N(1<=N<=10000),X(1<=x<=1000),Y(1<=Y<=1000),代表有N个敌人分布一个X行Y列的矩阵上,矩形的行号从0到X-1,列号从0到Y-1再给出四个数字x1,y1,x2,y2,代表你要从点(x1,y1)移到(x2,y2)。在移动的过程中你当然希望离敌人的距离的最小值最大化,现在原创 2017-09-03 18:08:24 · 400 阅读 · 0 评论 -
递推dp 超级树
设f[i][j],i表示i-超级树,j表示树上同时存在j条路径且无重复的点。 首先得解释明白数组含义。。。 第二维的目的很单纯:把路径合并时不会走重复的点,不会走重复的边。 那么说一下转移, 设sum=f[i-1][l]*f[i-1]*r;什么也不往上加 f[i][l+r]+=sum;只把根节点自己加上去 f[i][l+r+1]+=sum把根节点和两棵子树中某一条路径连起来 f[i][原创 2017-09-15 19:47:09 · 391 阅读 · 0 评论 -
矩阵快速幂 [bzoi4000]棋盘
bzoj4000传送门我一上来打了个傻乎乎的状压。。成功TLE 50%(不要阻止我装sb。。) 其实这道题叙述有点问题,给的那个3*p的矩阵,第一行是第0行。。。那么就发现转移只跟自己上一行的状态有关,但n太大了,而状态很少,少到能写进一个矩阵,快速幂get。 只要构造出f[i][j],i状态能转移到j状态,则f[i][j]=1; 把这个矩阵自乘n次即可。#include<cstdio>#i原创 2017-09-15 21:00:38 · 315 阅读 · 2 评论 -
莫队 mex
问题 G: mex 时间限制: 2 Sec 内存限制: 128 MB 提交: 72 解决: 35 [提交][状态][讨论版] 题目描述 有一个长度为n的数组{a1,a2,…,an}。m次询问,每次询问一个区间内最小没有出现过的自然数。输入 第一行n,m。 第二行为n个数。 从第三行开始,每行一个询问l,r。输出 一行一个数,表示每个询问的答案。样例输入 5原创 2017-09-24 19:19:52 · 946 阅读 · 0 评论 -
图论+前缀和 任(duty)
问题 B: 任(duty) 时间限制: 2 Sec 内存限制: 512 MB 题目描述 liu_runda退役之后就失去梦想开始咸鱼生活了… Bilibili夏日画板活动中,所有人都可以在一块画板上进行像素画创作.UOJ群有一群无聊的人决定在画板上创作一个50*50的UOJ的LOGO.如下图. 这块画板实际上是很大的矩形网格.一个网格是一像素. 一个人每三分钟才能画一个像素.所以liu原创 2017-09-26 17:21:01 · 476 阅读 · 0 评论 -
暴搜 [NOIP2004] 虫食算
问题 E: [Noip2004]虫食算 时间限制: 1 Sec 内存限制: 128 MB 题目描述 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母。来看一个简单的例子: 43#98650#45 + 8468#6633 44445506978 其中#号代表被虫子啃掉的数字。根据算式,我们很容易判断:第一行的两个数字分别是5和3,第二行的数字是原创 2017-09-17 21:21:41 · 465 阅读 · 0 评论 -
大暴搜专题总结
做的很颓,各种颓正解。。。但搜索方式和剪枝方法得总结总结 先总的扔上自己的题解。 [SCOI2005]栅栏 [NOIP2014]寻找道路 [NOIP2012] 文化之旅 [Noip2004]虫食算 [Usaco2009 Nov]lights 燈 [cqoi2013]新数独 Phi的反函数 这只是最近两天做的,之前也有做过几道。 对于dfs方式,最多的无疑是按点枚举,有些只能挨个枚原创 2017-09-17 21:41:13 · 579 阅读 · 0 评论 -
数学+暴搜 Phi的反函数
----------欧拉定理: phi(n)=(p1^x1)(p2^x2)… (1-1/p1) *(1/1/p2)…. 也就是说,phi(n)=p1^(x1-1)(p1-1) …… 而现在,我们知道了phi(x)=n,要求 x,而x=p1^x1*p2^x2 *… ----------根据常识(我现学的。。),最多分解出10个左右质因数。那就可以暴搜了。 把素数的原创 2017-09-17 17:25:35 · 748 阅读 · 0 评论 -
暴搜 栅栏
问题 A: [SCOI2005]栅栏 时间限制: 1 Sec 内存限制: 162 MB 题目描述 农夫约翰打算建立一个栅栏将他的牧场给围起来,因此他需要一些特定规格的木材。于是农夫约翰到木材店购 买木材。可是木材店老板说他这里只剩下少部分大规格的木板了。不过约翰可以购买这些木板,然后切割成他所需 要的规格。而且约翰有一把神奇的锯子,用它来锯木板,不会产生任何损失,也就是说长度为10的木板原创 2017-09-17 11:47:15 · 483 阅读 · 0 评论