--------杂--------
Neo__Z
这个作者很懒,什么都没留下…
展开
-
高精度乘法 普通(n^2)+fft(nlogn)
高精度乘法核心为ci=∑aj⋅bi−j+1c_i=\sum a_j·b_{i-j+1}普通算法时间复杂度为O(n)O(n). 又由于是卷积形式,可用fft优化为O(nlogn)O(nlogn)普通版#include<iostream>#include<cstdio>#include<string>#include<cstring>#include<algorithm>using name原创 2017-07-27 19:52:21 · 1237 阅读 · 2 评论 -
bzoj3166: [Heoi2013]Alo【可持久化线段树】
DescriptionWelcome to ALO ( Arithmetic and Logistic Online)。这是一个VR MMORPG , 如名字所见,到处充满了数学的谜题。 现在你拥有n颗宝石,每颗宝石有一个能量密度,记为ai,这些宝石的能量 密度两两不同。现在你可以选取连续的一些宝石(必须多于一个)进行融合,设为 ai, ai+1, …, a j,则融合而成的宝石的能量...原创 2018-03-05 19:12:27 · 284 阅读 · 0 评论 -
bzoj [Ahoi2013]连通图【cdq分治+并查集】
DescriptionInputOutputSample Input4 51 22 33 44 12 431 52 2 32 1 2Sample OutputConnected Disconnected ConnectedHINTN<=100000 M<=200000 K<=100000解...原创 2018-03-19 10:39:50 · 369 阅读 · 0 评论 -
bzoj4567: [Scoi2016]背单词【trie树+贪心】
DescriptionLweb 面对如山的英语单词,陷入了深深的沉思,“我怎么样才能快点学完,然后去玩三国杀呢?”。这时候睿智 的凤老师从远处飘来,他送给了 Lweb 一本计划册和一大缸泡椒,他的计划册是长这样的: ————— 序号 单词 ————— 1 2 …… n-2 n-1 n ————— 然后凤老师告诉 Lweb ,我知道你要学习的单词总共有 n 个,现...原创 2018-03-24 16:31:21 · 268 阅读 · 0 评论 -
bzoj4568: [Scoi2016]幸运数字【线性基+倍增】
DescriptionA 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一。每座城市都有一个 幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的象征。一些旅行者希望游览 A 国。旅行者计划 乘飞机降落在 x 号城市,沿着 x 号城市到 y 号城市之间那条唯一的路径游览,最终从 y 城市起飞离开 A 国。 在经过每一座城市时,游览者就会有机会...原创 2018-03-24 18:57:22 · 223 阅读 · 0 评论 -
bzoj3322: [Scoi2013]摩托车交易【最大生成树+倍增】
Descriptionmzry1992 在打完吊针出院之后,买了辆新摩托车,开始了在周边城市的黄金运送生意。在mzry1992 生活的地方,城市之间是用双向高速公路连接的。另外,每条高速公路有一个载重上限,即在不考虑驾驶员和摩托车重量的情况下,如果所载货物的量超过某个值,则不能驶上该条高速公路。今年,mzry1992 一共收到了来自n 个不同城市的n 份定订单,每个订单要求卖出上限为一定量的黄...原创 2018-03-27 19:32:27 · 247 阅读 · 0 评论 -
bzoj4946: [Noi2017]蔬菜【贪心】
解题思路:正解是从最后一天往前贪心…… 假设我们已经知道了最优的可以卖出的所有蔬菜,那么当我们知道了第i天的答案,我们只要去掉m个价值最小的蔬菜,就能得到第i-1天的答案。所以我们现在只要求出最后一天的答案以及最优的可以卖出的所有蔬菜。由于题目有要求,所以把每种蔬菜拆成两份,前c-1个价值为a,最后一个价值为a+s,按价值放入优先队列中,依次取出来从变质的最后一天开始放,放入还能放的...原创 2018-04-10 11:44:13 · 644 阅读 · 0 评论 -
bzoj4519: [Cqoi2016]不同的最小割【最小割树】
题目大意:求一张无向图中两两点之间不同的最小割的种数,n<=850,m<=8500;解题思路:即是要构造最小割树,统计不同边权的数量。 有一个结论:任意两点之间的最小割,不同的只有n-1个(然而不会证明……) 构造最小割树方法如下(分治+最小割): 1.集合中随便找两个点,求这两点的最小割 2.用求出的最小割更新s,t两个集合之间点的最小割(或者可以直接建边,那么最...原创 2018-05-09 11:48:10 · 259 阅读 · 0 评论 -
bzoj5301: [Cqoi2018]异或序列【莫队】
传送门解题思路:莫队算法,记录异或前缀和及桶即可。#include<bits/stdc++.h>#define ll long longusing namespace std;int getint(){ int i=0,f=1;char c; for(c=getchar();(c!='-')&&(c<'0'||c>'9')...原创 2018-05-04 16:02:21 · 238 阅读 · 0 评论 -
BJ模拟 等差数列【分块+FFT】
题目描述:给定nnn个整数a1,a2,a3,...,ana1,a2,a3,...,ana_1,a_2,a_3,...,a_n,求有多少个三元组(i,j,k)(i,j,k)(i,j,k)满足1≤i<j<k≤n1≤i<j<k≤n1≤iaj−ai=ak−ajaj−ai=ak−aja_j−a_i=a_k−a_j 。 1≤n≤100000,1≤ai≤300001≤n≤10000...原创 2018-05-05 11:59:13 · 359 阅读 · 0 评论 -
bzoj5285: [Hnoi2018]寻宝游戏
传送门解题思路:考试时逆向搜索过了70,交bzoj能过,不过还是看了下正解,真是脑洞惊奇。 观察每一位,可以发现,|0和&1是毫无意义的。 若某一位的值为,则需要满足最后一个出现在最后一个&0的后面。为则相反。 考虑把所有运算符写成一个01串,令所有|运算为0,&运算为1,第i位上的代表第i个数前的运算符。 同样考虑蒋所有数某一位的提取...原创 2018-05-08 17:09:30 · 250 阅读 · 0 评论 -
bzoj4009: [HNOI2015]接水果【整体二分+扫描线】
Description风见幽香非常喜欢玩一个叫做 osu!的游戏,其中她最喜欢玩的模式就是接水果。由于她已经DT FC 了The big black, 她觉得这个游戏太简单了,于是发明了一个更加难的版本。首先有一个地图,是一棵由 n 个顶点、n-1 条边组成的树(例如图 1给出的树包含 8 个顶点、7 条边)。这颗树上有 P 个盘子,每个盘子实际上是一条路径(例如图 1 中顶点 6 到顶点 ...原创 2018-03-12 19:16:34 · 320 阅读 · 0 评论 -
bzoj2741: 【FOTILE模拟赛】L【可持久化trie树+分块】
DescriptionFOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XOR和。 即对于一个询问,你需要求出max(Ai xor Ai+1 xor Ai+2 … xor Aj),其中l<=i<=j<=r。 为了体现在线操作,对于一个询问(x,y): l = min ( ((x+lastans) mod N)+1 , ((y+lasta...原创 2018-03-05 15:39:45 · 239 阅读 · 0 评论 -
bzoj2724: [Violet 6]蒲公英【分块模板】
题目大意:n个数,m次询问,每次询问区间众数,强制在线,1<=n<=40000,1<=m<=50000。解题思路:分块裸题。存一下模板。 用O(nn−−√)O(nn)O(n\sqrt n)的时间预处理出sum[i][j]表示i在前j块的出现次数,ans[i][j]表示第i块到第j块的答案(枚举左端点),询问时只用考虑边界上至多2n−−√2n2\sqrt n...原创 2018-03-05 11:06:09 · 369 阅读 · 0 评论 -
hdu1007 Quoit Design 【计算几何+分治】
题目大意:给出平面上n个点,求最近两点距离的一半。解题思路:很经典的平面分治题。假设我们把所有点按 xx 坐标平均分成了左右两个部分,设平分直线为x=x0x=x_0,那么最近点对(p,q)(p,q)的距离就是下面二者的最小值: (1)p,qp,q同属于左半边或右半边时的最近点对距离。 (2)p,qp,q属于不同区域时的最近点对距离。 对于情况(1),是与原题完全相同的子问题,可以递归处理。设左原创 2017-12-20 21:36:21 · 259 阅读 · 0 评论 -
bzoj2038 小Z的袜子【莫队算法模板+详解】
解题思路:莫队出的模板题。如果我们知道了询问区间中每种颜色的数量cnticnt_i,那么一种颜色的贡献就是C2cntiC_{cnt_i}^2,总方案数是C2r−l+1C_{r-l+1}^2,每种颜色贡献求和再与总方案数求gcd即可。关键是如何快速统计区间内每种颜色的数量,这就要用到莫队算法。考虑建立两个指针l,r,表示区间[l,r]内每种颜色的数量已知。 再将询问离线,按询问左端点所在块(块大小为原创 2017-12-25 19:05:45 · 345 阅读 · 0 评论 -
poj2420 A Star not a Tree?【模拟退火】
题目大意:给定n个点,求一点到所有点距离的最小值。解题思路:模拟退火真是神, 就是先设置一个起始点较大的步长step(初始温度),每次随机向一个方向走step,若该点更优,则更新答案,并转移起始点位置。操作完后减小等比例减小step重复上述操作若干次(尽量多),则可得到近似最优解。#include<cstdio>#include<algorithm>#include<cmath>using原创 2017-12-25 20:08:52 · 339 阅读 · 0 评论 -
bzoj2002 弹飞绵羊【分块】
解题思路:我们可以在分块后维护每个位置弹出该块所需步数和弹到的位置,这样查询和修改都是O(n√)O(\sqrt n)的了。#include<cstdio>#include<iostream>#include<cstring>#include<string>#include<algorithm>#include<cmath>#include<ctime>#include<vector>原创 2017-12-18 09:29:50 · 373 阅读 · 0 评论 -
bzoj3052 糖果公园【树上带修改莫队】
解题思路:传说中的b站毒瘤题,一交就引起民粪。 本来只是想做树上莫队模板bzoj3757苹果树的,结果题目下架了,只能上这道了…… 如果不会树分块的可以先去做做bzoj1086,题解在这里 不会带修改莫队的可以先去做做bzoj2120,题解在这里这里主要说一下正常无修改的树上莫队的做法。先树分块,将每个询问按左端点所在块为第一关键字,右端点dfs序为第二关键字排序,这样就保证了指针挪动复杂度(原创 2017-12-28 19:39:14 · 346 阅读 · 0 评论 -
bzoj2388: 旅行规划【分块+凸包】
DescriptionOIVillage是一个风景秀美的乡村,为了更好的利用当地的旅游资源,吸引游客,推动经济发展,xkszltl决定修建了一条铁路将当地n个最著名的经典连接起来,让游客可以通过火车从铁路起点(1号景点)出发,依次游览每个景区。为了更好的评价这条铁路,xkszltl为每一个景区都哦赋予了一个美观度,而一条旅行路径的价值就是它所经过的景区的美观度之和。不过,随着天气与季节的变化,...原创 2018-03-06 21:40:42 · 312 阅读 · 0 评论 -
bzoj2732: [HNOI2012]射箭【二分答案+半平面交】
Description沫沫最近在玩一个二维的射箭游戏,如下图 1 所示,这个游戏中的 x 轴在地面,第一象限中有一些竖直线段作为靶子,任意两个靶子都没有公共部分,也不会接触坐标轴。沫沫控制一个位于(0,0)的弓箭手,可以朝 0 至 90?中的任意角度(不包括 0度和 90度),以任意大小的力量射出带有穿透能力的光之箭。由于游戏中没有空气阻力,并且光之箭没有箭身,箭的轨迹会是一条标准的抛物线,被...原创 2018-02-18 09:32:22 · 257 阅读 · 0 评论 -
bzoj2527: [Poi2011]Meteors【整体二分+树状数组】
DescriptionByteotian Interstellar Union (BIU) has recently discovered a new planet in a nearby galaxy. The planet is unsuitable for colonisation due to strange meteor showers, which on the other han...原创 2018-03-15 14:30:05 · 207 阅读 · 0 评论 -
bzoj2288: 【POJ Challenge】生日礼物【贪心+优先队列+链表】
Descriptionftiasch 18岁生日的时候,lqp18_31给她看了一个神奇的序列 A1, A2, …, AN. 她被允许选择不超过 M 个连续的部分作为自己的生日礼物。自然地,ftiasch想要知道选择元素之和的最大值。你能帮助她吗?Input第1行,两个整数 N (1 ≤ N ≤ 105) 和 M (0 ≤ M ≤ 105), 序列的长度和可以选择的部分。第...原创 2018-02-25 20:11:01 · 740 阅读 · 0 评论 -
bzoj2821: 作诗(Poetize)【分块】
Description问题简述:N个数,M组询问,每次问[l,r]中有多少个数出现正偶数次。Input输入第一行三个整数n、c以及m。表示文章字数、汉字的种类数、要选择M次。第二行有n个整数,每个数Ai在[1, c]间,代表一个编码为Ai的汉字。接下来m行每行两个整数l和r,设上一个询问的答案为ans(第一个询问时ans=0), 令L=(l+ans)mod n+1, R=(r+ans...原创 2018-03-05 10:03:42 · 205 阅读 · 0 评论 -
bzoj5289: [Hnoi2018]排列 排列【贪心+堆】
传送门解题思路:首先要看出题目要求的就是一棵树(有环无解),求一个顺序,父亲必须再儿子前选,选第i个点的价值是i*w[i],求最大价值和。 然后这确实是雅礼集训的原题。 先来考虑一个简单的情况:若v是u的儿子且是所有可选点中最小的。那么选了u之后下一个一定会选v。那么我们可以把u与v合并。 这个结论对于一个连通块也是对的,所以块与块之间也可以比较大小,且比较的是平均值。因为考虑连通...原创 2018-05-08 17:33:41 · 505 阅读 · 0 评论