
机智题
文章平均质量分 55
dance_in_the_dark
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【JZOJ5424】【NOIP2017提高A组集训10.25】凤凰院凶真
DescriptionData ConstraintSolution这和以前的一道题很像,叫千帆渡的,刚好是一年前的题,可我还是没想到,就差一点……这说明我的学习是无效学习,以后要加强对过去题目的复习。 再次做好像有了更深的理解。我们设f[i][j]表示与当前A做到i,B做到j,强制i配对的最长公共递增序列。我们顺序枚举i,j,,若当前a[i]!=b[j],那么显然f[i][j]=f[i][j-1原创 2017-10-25 21:40:32 · 487 阅读 · 0 评论 -
【JZOJ5336】【NOIP2017提高A组模拟8.24】提米树
DescriptionData ConstraintSolution我们可以用dp解决。设dp[i]表示前i个节点的最优值。我们发现一对节点(x,y)(x的dfs序小于y的dfs序)可以形成相邻叶子当且仅当x处于其lca的儿子u的右链上,y处于lca的儿子v的左链上,且u,v相邻u在v的左方。我们将每一条右链存下,对于每个节点查找其对应右链的答案。这样是O(N^2)的。 我们发现没一个左链上的点顺原创 2017-08-24 21:46:44 · 754 阅读 · 1 评论 -
【JZOJ5262】【GDOI2018模拟8.12】树
DescriptionData ConstraintSolution我们发现两个显而易见(一点都不显然好吗)的结论: 1、是否优先不论,我们发现一条u->v的路径可以拆分成u->lca,lca->v两条路径,反之也成立。 2、a->b和c->d等价于a->d和c->b 于是我们得到推论:一个点要么作为起点要么作为终点。(吼啊啊啊) 那么我们就可以很开心的做dp了,由于叶子节点必须靠父亲边才能原创 2017-08-20 22:49:39 · 383 阅读 · 0 评论 -
【JZOJ5260】【GDOI2018模拟8.12】区间第k小
DescriptionData ConstraintSolution我们先考虑离线做法。显然是莫队+数据结构。但我们发现莫队是插入NN−−√N\sqrt N次查询n次,那么用线段树维护十分不划算,所以我们考虑提高查询复杂度而降低插入复杂度。于是我们想到了分块。我们对数值分为根号块,维护块内每个数出现次数和答案。那么单次插入O(1),单次查询O(N−−√\sqrt N),总时间复杂度O(NN−−√N\原创 2017-08-20 22:32:30 · 503 阅读 · 0 评论 -
【JZOJ5238】【GDOI2018模拟8.7】的士碰撞
Descriptionn辆车在一条数轴上,车的编号为1到n。编号为i的车坐标为a[i],初始方向为dir[i](左或右),初始位置两两不同。每辆车每个时刻行走距离为1。两辆车相碰时,会调转方向,继续行走,掉头不消耗时间。现在车子开始朝其方向行驶,同一个坐标允许有多辆车。现在有q个询问,给出 t,i,询问过了t时刻后,编号为i的车的坐标的绝对值。Data ConstraintSolution考场上理解原创 2017-08-09 10:37:17 · 476 阅读 · 0 评论 -
【JZOJ5222】【GDOI2018模拟7.12】A
Description 注意:题意有误,IQ小于等于的都会听从指挥Data ConstraintSolution这道题,有两个坑,首先,IQ小于等于的都会听从指挥,这在做题时居然没讲,居然还有人AC了!!!其次,士兵的IQ可以为0,这小学都没上就去打仗了吧? 然后我用暴力过了^^但后来还是打了遍正解。 下面讲一下正解。 我们考虑当一个操作在x时,我们发现IQ大于a[x]的其往后的逆序对是不变原创 2017-07-12 22:16:58 · 475 阅读 · 0 评论 -
NOIP2016提高组day2 蚯蚓
DescriptionData Constraint Solution我们先讨论一下假设有两条蚯蚓x,y(x>y),那么分别切完他们后最终的长度分别为p*x+q,p *(y+q)。将括号去掉就为p *x+q,p *y+p *q。那么显然有p *x+q>p *y+p *q。所以我们可以得出一个结论:先切的到最后还是先切,后切的还是后切。所以我们用三个数组,分别存:x、p*x,x-p *x。每次从三个原创 2016-11-28 22:42:20 · 610 阅读 · 0 评论 -
【JZOJ5105】【GDSOI2017】魔兽争霸 x
DescriptionData ConstraintSolution我们发现答案最多只有两条直线构成,自己简单画一下就成。 现在问题成了如何求两条直线构成的最优方案。 我们设两条向量分别为(a,b),(c,d),价值分别为e,f,那么设(a,b)的时间为x,我们可以发现在n−a∗xc<m−b∗xd{n-a*x\over c}<{m-b*x\over d}时,f(x)=ex+f∗n−a∗xc=(e原创 2017-05-07 13:32:47 · 762 阅读 · 0 评论 -
NOIP提高组 艾比所特
Description阿良良木历将要迎来人生(不,是吸血鬼生涯)的第二次战斗——与身为人类和吸血鬼混血儿的艾比所特在直江津高中的操场solo,以取回Heartunderblade的左脚。艾比所特个子不大,却单手扛着一副形状比自己大三倍,重量是他体重乘三次方的巨大十字架。吸血鬼是怕十字架的,所以历要远远地躲着。更麻烦的是艾比所特能变成雾气,历攻击不到他,他却因为是混血儿,吸血鬼的弱点降到了mininu原创 2016-09-01 17:31:38 · 799 阅读 · 0 评论 -
【JZOJ5081】【GDSOI2017第三轮模拟】Travel Plan
DescriptionData ConstraintSolution这和以前的一道题很像啊。我们发现∑ci\sum ci太大了,而∑vi\sum vi的大小可以接受, 所以我们设出f[i][j]表示当前做到dfs序中第i个物品,选出物品价值和至少为j的最小代价。这可以在O(N∑viN\sum vi)内解决。然后我们考虑不选某子树的物品,即在dfs序中有一段物品不选择。所以我们在处理一个g[i][j]原创 2017-04-22 16:29:04 · 376 阅读 · 0 评论 -
【JZOJ5077】【GDOI2017第三轮模拟day2】树的难题
DescriptionData ConstraintSolution这还是一道树分治的题。我们觉得相同颜色很麻烦,所以我们可以在当前的分治重心中先把与重心相连的边按颜色排个序,然后处理出每棵树到根路径上的颜色权值。维护两颗线段树,一颗表示与当前走的儿子颜色不同的答案,一颗表示颜色相同的答案。颜色改变时用线段树合并一下即可。时间复杂度O(Nlog2NNlog^2N).Code#include<iost原创 2017-04-22 16:12:10 · 630 阅读 · 0 评论 -
【JZOJ5073】【GDOI2017第三轮模拟day1】影魔
Description影魔,奈文摩尔,据说有着一个诗人的灵魂。事实上,他吞噬的诗人灵魂早已成千上万。千百年来,他收集了各式各样的灵魂,包括诗人、牧师、帝王、乞丐、奴隶、罪人,当然,还有英雄。 每一个灵魂,都有着自己的战斗力,而影魔,靠这些战斗力提升自己的攻击。 奈文摩尔有n个灵魂,他们在影魔宽广的体内可以排成一排,从左至右标号1到n。第i个灵魂的战斗力为k[i],灵魂们以点对的形式为影魔提供攻击原创 2017-04-22 16:05:37 · 416 阅读 · 0 评论 -
【JZOJ5060】【GDOI2017第二轮模拟day1】公路建设
Description在Byteland一共有n 个城市,编号依次为1 到n,它们之间计划修建m条双向道路,其中修建第i 条道路的费用为ci。 Byteasar作为Byteland 公路建设项目的总工程师,他决定选定一个区间[l, r],仅使用编号在该区间内的道路。他希望选择一些道路去修建,使得连通块的个数尽量少,同时,他不喜欢修建多余的道路,因此每个连通块都可以看成一棵树的结构。 为了选出最佳原创 2017-04-16 11:46:13 · 687 阅读 · 0 评论 -
【JZOJ5272】【GDOI2018模拟8.14】神奇的重复序列
DescriptionData ConstraintSolution我们发现当两个起点i,j(iCode#include<iostream>#include<cmath>#include<cstring>#include<cstdio>#include<algorithm>using namespace std;const int maxn=3e3+5;int bz[maxn][200原创 2017-08-22 22:23:17 · 324 阅读 · 0 评论 -
【JZOJ5415】【NOIP2017提高A组集训10.22】[斜率优化]公交运输
Description城市中有一条长度为n的道路,每隔1的长度有一个公交车站,编号从0到n,学校在0号车站的位置。其中每个公交车站(除了n号车站)有两个属性ci和vi,代表从这个公交车站出发的公交车的性质。ci代表这个从i出发的公交车,相邻两个停靠站之间的距离。vi表示每坐1站的花费。 注意,一辆公交车出发后会向n号车站的方向行进。同时,一名乘客只能从起点站上车,但可以从任意停靠站下车。校庆志愿者原创 2017-10-25 21:31:40 · 938 阅读 · 0 评论 -
【JZOJ5442】【NOIP2017提高A组冲刺11.1】荒诞[状压dp]
Description我的灵魂与我之间的距离如此遥远,而我的存在却如此真实。 ——加缪《局外人》 我醒来的时候,发现满天星斗照在我的脸上。田野上的声音一直传到我的耳畔。夜的气味,土地的气味,海盐的气味,使我的两鬓感到清凉。这沉睡的夏夜的奇妙安静,像潮水一般浸透我的全身。这时,长夜将尽,汽笛叫了起来。它宣告有些人踏上旅途,要去一个从此和我无关痛痒的世界。 这时我在想一个问题:我有一个n个点,m条原创 2017-11-01 16:50:48 · 583 阅读 · 0 评论 -
【JZOJ5411】【NOIP2017提高A组集训10.22】友谊
DescriptionFlowey 是一朵能够通过友谊颗粒传播LOVE 的小花.它的友谊颗粒分为两种, 圆粒的和皱粒的,它们依次排列组成了一个长度为2m 的序列.对于一个友谊颗 粒的序列,如果存在1<=iData Constraint对于30%的数据,满足n<=10,m<=10 对于60%的数据,满足n<=300,m<=300 对于100%的数据,满足1<=n<=3000,1<=m<=300原创 2017-10-24 08:21:13 · 540 阅读 · 0 评论 -
【JZOJ5410】【NOIP2017提高A组集训10.22】小型耀斑
DescriptionUthuso 的核反应失控了,她在地灵殿释放了几颗大核弹.地灵殿可以看做一个大小为n*m 的矩阵.一颗大小为k 的核弹,对于任意一个与爆炸中心曼哈顿距离小于k 的地区,会造成(k-(该地区到爆炸中心曼哈顿距离))*(该地区的价值)的损失.现在,地灵殿方面想统计一下每颗核弹造成的损失,请你来帮忙计算.Data Constraint对于30%的数据,满足n<=300,m<=300,原创 2017-10-24 08:05:34 · 534 阅读 · 0 评论 -
【JZOJ5432】【NOIP2017提高A组集训10.28】三元组
Description有X+Y+Z个三元组(x[i],y[i],z[i]),请你从每个三元组中挑数,并满足以下条件: 1、每个三元组中可以且仅可以选择一个数(即x[i],y[i],z[i]中的一个) 2、选择x[i]的三元组个数恰好为X 3、选择y[i]的三元组个数恰好为Y 4、选择z[i]的三元组个数恰好为Z问选出的数的和最大是多少 问选出的数的和最大是多少Data Constraint原创 2017-10-29 22:07:56 · 600 阅读 · 0 评论 -
【JZOJ5431】【NOIP2017提高A组集训10.28】序列操作
Description一开始有n个非负整数hi,接下来会进行m次操作,第i次操作给出一个数c[i],要求你选出c[i]个大于零的数并将它们减去1。 问最多可以进行多少轮操作后无法操作(即没有c[i]个大于零的数)Data Constraint对于10%的数据满足,1<=n,m<=5 对于另外20%的数据满足,1<=n<=8,1<=h[i]<=7 对于50%的数据满足,1<=n,m<=1000原创 2017-10-29 22:02:22 · 584 阅读 · 0 评论 -
【JZOJ5429】【NOIP2017提高A组集训10.27】排列
Description有两个长度为n的排列A和B,定义排列的价值f(A,B)为所有满足A[i]>B[i]的位置i的数量。 现给出n,A,B和S,其中A和B中有一些位置的数未知,问有多少种可能的填数的方案使得f(A,B)=SData Constraint对于20%的数据满足,1<=n<=10 对于50%的数据满足,1<=n<=20 对于70%的数据满足,1<=n<=200 对于100%的数据满原创 2017-10-29 21:48:33 · 633 阅读 · 0 评论 -
【JZOJ5428】【NOIP2017提高A组集训10.27】查询
Description给出一个长度为n的序列a[] 给出q组询问,每组询问形如< x,y>,求a序列的所有区间中,数字x的出现次数与数字y的出现次数相同的区间有多少个Data Constraint对于30%的数据,1<=n<=100,1<=q<=1000 对于另外30%的数据,序列中只有最多50种不同的颜色且1<=n<=1000 对于100%的数据,1<=n<=8000,1<=q<=50000原创 2017-10-29 21:21:19 · 861 阅读 · 0 评论 -
【JZOJ5342】【NOIP2017模拟9.2A组】赤壁情
DescriptionData ConstraintSolution我们设dp[i][j][k][0..2]表示当前放到第i个数,在排列中形成j个连续段,形成的波浪值为k,在开头结尾是否有段的方案数。显然m的最大值不会超过n^2,所以dp是3*n^4的。我们每次考虑将i+1放到哪里。有几种情况: 1、若开头或结尾有一个为空,i+1放到开头或结尾,并且i+1自成一段。 2、若开头或结尾有一个为空,原创 2017-09-02 19:45:14 · 668 阅读 · 0 评论 -
【JZOJ5341】【NOIP2017模拟9.2A组】密州盛宴
DescriptionData ConstraintSolution我们发现要想让序列合法,苏东坡必须每个时刻都有菜吃。 要想满足这个条件,我们从后往前数的时候,任意时刻1的数量-0的数量必须大于等于-1。意味着0每出现1个,1就必须出现1个,然后0可以多出现一个,意味着村民再吃1盘。若1的数量-0的数量为-2,意味着苏东坡有一个时刻吃不了菜。我们发现每次遇到一个不合法的,该位上的数一定是0,我们只原创 2017-09-02 19:34:05 · 562 阅读 · 0 评论 -
【JZOJ5296】【清华集训2017模拟】Sequence
DescriptionData ConstraintSolution对于S和S’,我们可以用主席树很轻松的求出,但不能求出二关键字的k大。所以我们考虑整体二分。我们可以求出排名在[x,y]内的元素的范围[a,b]。对于一个范围[l,r]设满足排名k在该区间的询问[x,y],我们二分出mid,对于一个询问,若满足区间[l,r]内第一关键字在[a,b]且满足第二关键字小于mid的数量少于k,则答案一定在原创 2017-08-23 21:54:47 · 410 阅读 · 0 评论 -
【JZOJ5295】【清华集训2017模拟】Create
DescriptionData ConstraintSolution这道题很经典。 我们发现一次操作最多使序列多出1段新的连续序列。所以我们考虑维护这个序列。我们将询问按x大小排序后建一棵主席树,那么对于一个修改(l,r,v),我们可以算出修改后(l,r)对答案的贡献。现在问题是怎样取消修改前的贡献。我们用线段树维护每一段连续的颜色的起点和终点。每一次修改暴力跳一下每个颜色段,查询他们原来的贡献。原创 2017-08-23 07:52:57 · 486 阅读 · 0 评论 -
【JZOJ5058】【GDSOI2017模拟4.13】采蘑菇
DescriptionA君住在魔法森林里,魔法森林可以看做一棵n个结点的树,结点从1~n编号。树中的每个结点上都生长着蘑菇。蘑菇有许多不同的种类,但同一个结点上的蘑菇都是同一种类,更具体地,i号结点上生长着种类为c[i]的蘑菇。 现在A君打算出去采蘑菇,但他并不知道哪里的蘑菇更好,因此他选定起点s后会等概率随机选择树中的某个结点t作为终点,之后从s沿着(s,t)间的最短路径走到t.并且A君会采摘途原创 2017-04-16 11:40:33 · 636 阅读 · 0 评论 -
【JZOJ5039】【NOI2017模拟4.2】查询
Description给出若干条线段,用(x1,y1),(x2,y2)表示其两端点坐标,现在要求支持两种操作: 0 x1 y1 x2 y2 表示加入一条新的线段,(x1,y1)-(x2,y2) 1 x0 询问所有线段中,x坐标在x0处的最高点的y坐标是什么,如果对应位置没有线段,则输出0。Data Constraint对于10%的数据:n,m<=1000 另外20%的数据:所有的1操作都在原创 2017-04-06 16:19:34 · 636 阅读 · 0 评论 -
【51nod 1201】 整数划分
Description将N分为若干个不同整数的和,有多少种不同的划分方式,例如:n = 6,{6} {1,5} {2,4} {1,2,3},共4种。由于数据较大,输出Mod 10^9 + 7的结果即可。(1 <= N <= 50000)Solution直接一看就想到是一道最简单背包问题 但n<=50000!!! 然后我就直接上背包,结果毫无疑问的超时,然后我的一个伙伴在打二维背包暴力时手抖打错打原创 2016-12-20 17:12:48 · 552 阅读 · 0 评论 -
【JZOJ4929】 【NOIP2017提高组模拟12.18】B
Description在两个n*m的网格上染色,每个网格中被染色的格子必须是一个四联通块(没有任何格子被染色也可以),四联通块是指所有染了色的格子可以通过网格的边联通,现在给出哪些格子在两个网格上都被染色了,保证网格的最外围一层不会在两个网格中同时被染色,即所有处于第x行第y列满足x=1或x=n或y=1或y=m的格子不会被在两个网格中同时被染色,请求出任意一种染色的方案,如果无解,请输出-1。Dat原创 2016-12-20 15:35:18 · 573 阅读 · 0 评论 -
【JZOJ4932】【NOIP2017提高组模拟12.24】B
Description现在你有N个数,分别为A1,A2,…,AN,现在有M组询问需要你回答。每个询问将会给你一个L和R(L<=R),保证Max{Ai}-Min{Ai}<=R-L,你需要找出并输出最小的K(1<=K<=N,不存在输出-1)满足以下两个条件: ①能够在原来的N个数中选出不重复(下标不重复)的K个数,使得这K个数的和在区间[L,R]内。 ②能够在原来的N个数中选出不重复(下标不重复)的原创 2016-12-24 17:20:56 · 555 阅读 · 0 评论 -
【JZOJ 4931】【NOIP2017提高组模拟12.24】A
Description有N家洗车店从左往右排成一排,每家店都有一个正整数价格Pi。 有M个人要来消费,第i个人会驶过第Ai个开始一直到第Bi个洗车店,且会选择这些店中最便宜的一个进行一次消费。但是如果这个最便宜的价格大于Ci,那么这个人就不洗车了。 请给每家店指定一个价格,使得所有人花的钱的总和最大。Data Constraint所有数据满足N<=50,M<=4000,1<=Ai<=Bi<=N,原创 2016-12-24 16:52:24 · 697 阅读 · 0 评论 -
【51Nod 1463】 找朋友
Description给定: 两个长度为n的数列A 、B 一个有m个元素的集合K 询问Q次 每次询问[l,r],输出区间内满足|Bi-Bj|∈K 的最大Ai+Aj数据约定: n,Q<=100000 m <= 10 0<=A[i]<=1000000000 1<=B[i]<=n 1<=K[i]<=n 保证B[i]互不相等Solution这道题很难啊,一下子居然想不出来。虽然想到是线段原创 2016-12-22 15:59:05 · 674 阅读 · 0 评论 -
【JZOJ 4922】【NOIP2017提高组模拟12.17】环
Description小A有一个环,环上有n个正整数。他有特殊的能力,能将环切成k段,每段包含一个或者多个数字。对于一个切分方案,小A将以如下方式计算优美程度: 首先对于每一段,求出他们的数字和。然后对于每段的和,求出他们的最大公约数,即为优美程度。 他想通过合理地使用他的特殊能力,使得切分方案的优美程度最大。Data Constraint对于20%的数据,n<=16,ai<=10 对于40%原创 2016-12-17 20:29:25 · 551 阅读 · 1 评论 -
【51nod1403】 有趣的堆栈
Description大家都熟悉堆栈操作。一个堆栈一般有两种操作,push和pop。假设所有操作都是合法的并且最终堆栈为空。我们可以有很多方法记录堆栈的操作, (1) 对每个pop操作,我们记录它之前一共有多少个push操作。 (2) 对每个pop操作,我们记录这个被Pop的元素曾经被压上了几个。 例如:操作push, push, pop, push, push, pop, push, pop原创 2016-12-16 22:44:52 · 442 阅读 · 0 评论 -
【51 nod 1294】 修改数组
Description给出一个整数数组A,你可以将任何一个数修改为任意一个正整数,最终使得整个数组是严格递增的且均为正整数。问最少需要修改几个数?Solution对于一个数a[i],显然当它小于i时他肯定是要修改的,那么当有两个数a[u],a[v],且(u>v>i,a[u]>a[v]>a[i]),那么现在选哪一个呢?我们考虑取一个和i之间能容纳尽量多数并且尽量近的数,所以我们就比较a[u]-u,a[原创 2016-12-08 16:39:01 · 508 阅读 · 0 评论 -
51nod1743 JZOJ4899【NOIP2016提高A组集训第17场11.16】雪之国度
Description雪之国度有N座城市,依次编号为1到N,又有M条道路连接了其中的城市,每一条道路都连接了不同的2个城市,任何两座不同的城市之间可能不止一条道路。雪之女王赋予了每一座城市不同的能量,其中第i座城市被赋予的能量为Wi。 如果城市u和v之间有一条道路,那么只要此刻雪之女王的能量不小于|Wu-Wv|,这条道路就是安全的。如果城市u和v之间存在两条没有重复道路的安全路径(其中原创 2016-11-16 22:28:54 · 1058 阅读 · 0 评论 -
JZOJ4884. 【NOIP2016提高A组集训第12场11.10】图的半径
Description mhy12345学习了树的直径,于是开始研究图的半径,具体来说,我们需要在图中选定一个地方作为中心,其中这个中心有可能在路径上。 而这个中心的选址需要能够使得所有节点达到这个中心的最短路里面最大值最小(也就是说离中心最远的结点距离尽可能小),求出这个最大值的最小值,作为图的半径。Data ConstraintN<=200,W<=100000,M<=19900 数据有梯度原创 2016-11-10 22:44:51 · 443 阅读 · 0 评论 -
JZOJ4878. 【NOIP2016提高A组集训第10场11.8】时空传送
Description经过旷久的战争,ZMiG和707逐渐培养出了深厚的感♂情。他们逃到了另一块大陆上,决定远离世间的纷争,幸福地生活在一起。钟情707的neither_nor决心要把他们拆散,他要动用手中最大杀器之一——超时空传送仪来分开ZMiG和707。ZMiG和707所在的大陆可以被描述成N个点M条边的有向无环图。707和ZMiG自带魔法防御,neither_nor只可以用超时空传送仪把707原创 2016-11-08 22:47:27 · 470 阅读 · 0 评论 -
JZOJ4868. 【NOIP2016提高A组集训第9场11.7】Simple
DescriptionData ConstraintSolution我们先来看一下不考虑重复时的的做法,对于一个固定的x,y的取值范围明显是[0,⌊c−n∗xm⌋\lfloor{{c-n*x}\over{m}}\rfloor]。所以我们枚举x,就可以算出对应的值。ans=∑⌊qn⌋x=0⌊c−n∗xm⌋\sum_{x=0}^{\lfloor{q\over{n}}\rfloor}{\lfloor{{c原创 2016-11-07 17:27:59 · 614 阅读 · 0 评论