noip
Facico
生命是闪耀的此刻,不是过程,就像芳香不需要道路一样。
展开
-
【NOIP2013提高组】积木大赛
Description春春幼儿园举办了一年一度的“积木大赛”。今年比赛的内容是搭建一座宽度为 n 的大厦,大厦可以看成由 n 块宽度为1的积木组成,第i块积木的最终高度需要是hi。 在搭建开始之前,没有任何积木(可以看成 n 块高度为 0 的积木)。接下来每次操作,小朋友们可以选择一段连续区间[L,R],然后将第 L 块到第 R 块之间(含第 L 块和第 R 块)所有积木的高度分别增加1。 小原创 2016-03-29 20:05:20 · 2212 阅读 · 0 评论 -
【NOIP2013提高组】花匠
Description花匠栋栋种了一排花,每株花都有自己的高度。花儿越长越大,也越来越挤。栋栋决定把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希望剩下的花排列得比较别致。 具体而言,栋栋的花的高度可以看成一列整数h_1, h_2, … , h_n。设当一部分花被移走后,剩下的花的高度依次为g_1, g_2, … , g_m,则栋栋希望下面两个条件中至少有一个满足:原创 2016-03-29 20:13:56 · 1229 阅读 · 0 评论 -
【NOIP2012提高组】疫情控制
Description给出一颗n个节点有边权的树 和m个军队所在的位置 军队从某节点移动到相邻节点要花费边长度的时间 求最少要多少时间使得根节点(编号为1)到每个叶子的路径上最少有一支军队(根节点不能有军队)Solution这题第一眼看上去就像树形DP,然而想复杂了。二分答案求什么最大或最小之类的,肯定要用二分。小贪心我们发现每个军队走得越上,贡献越大。很显然。怎么做既然是越往上越优,那么我们都往上原创 2016-03-29 20:27:37 · 3306 阅读 · 0 评论 -
【NOIP2012提高组】开车旅行
Description现在有n个城市,每个城市有它的高度Hi,保证每个Hi互不相同。我们定义两个城市之间的距离dis(i,j)=|Hi−Hj|dis(i,j)=|Hi−Hj|,并且只能从编号小的城市去到编号大的城市。现在有两个人,小A和小B要开车(雾)去旅行。小A先开一天,小B再开一天。每一天都可以从一个开到另一个城市。小A会选择去离当前城市第二近的城市,小B会选择去离当前城市最近的那个城市。如果他原创 2016-03-18 18:58:44 · 1494 阅读 · 0 评论 -
【NOIP2013模拟】绿豆蛙的归宿
Description随着新版百度空间的上线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 给出一个有向无环图,起点为1终点为N,每条边都有一个长度,并且从起点出发能够到达所有的点,所有的点也都能够到达终点。绿豆蛙从起点出发,走向终点。 到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。 现在绿豆蛙想知道,从起点走到终点的原创 2016-03-19 12:56:24 · 854 阅读 · 0 评论 -
【NOIP2013提高组】华容道
Description小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次。于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成,最少需要多少时间。 小 B 玩的华容道与经典的华容道游戏略有不同,游戏规则是这样的: 在一个 n*m 棋盘上有 n*m 个格子,其中有且只有一个格子是空白的,其余 n*m-1个格子上每个格子上有一个棋子,每个棋子的大小都是 1*原创 2016-04-02 07:26:43 · 1867 阅读 · 0 评论 -
【NOIP模拟】复制&粘贴
Description文本编辑器的一个最重要的机能就是复制&粘贴。JOI社现在正在开发一款能够非常高速地进行复制&粘贴的文本编辑器,作为JOI社一名优秀的程序猿,你担负起了复制&粘贴功能的测试这一核心工作。整个JOI社的命运都系在你的身上,因此你无论如何都想写出一个正确且高速的程序来完成这项工作。 具体的做法如下所示。文件的内容是一个字符串S,对其进行N次复制&粘贴的操作,第i次操作复制位置Ai和原创 2016-04-02 16:08:56 · 1129 阅读 · 0 评论 -
【NOIP模拟】Lala买面包
Description众所周知,lala是一名非常喜欢看天线宝宝拉拉吃面包的高中生,在经过无数次的重播那堪称经典的画面之后,lala终于感到看不下去了,决定自己也去吃回面包。 于是lala来到了一家面包店,但由于这家面包店的面包实在太多了,lala难以选择该买哪些面包,但这自然难不倒机智的lala,他先给每种面包定了一个美味度,并只购买美味度能表示成x^p(x,p均为大于等于2的正整数)的面包,但原创 2016-04-02 15:45:26 · 1155 阅读 · 0 评论 -
【NOIP模拟】我的天
Description很久很以前,有一个古老的村庄——xiba村,村子里生活着n+1个村民,但由于历届村长恐怖而且黑暗的魔法统治下,村民们各自过着独立的生活,完全没有意识到其他n个人的存在。 但有一天,村民xiba臻无意中也得到了魔法,并发现了这个恐怖的事实。为了反抗村长,他走遍了全世界,找到了其他n个村民,并组织他们发动革命。但让这n个素不相识的村民(xiba臻已跟他们认识)同心协力去抵抗村长是原创 2016-04-02 18:29:52 · 855 阅读 · 0 评论 -
Noip2015总结
Noip2015总结第一天, 感觉很好,比的也很好,但结果却出乎意料。第一题,一道纯模拟,按着题目意思打就可以了。第二题,一道搜索题,用tarjan或者直接搜索。比赛时想到了tarjan不过觉得直接搜索更简单,结果由于优化时调用的栈太大就爆了。下来一打tarjan就AC。我想,以后比赛是不要怕麻烦,打打肯定对的就肯定对了,不要想的太复杂。第三题,一道贪心暴搜题,比赛时想原创 2015-11-21 08:58:34 · 1163 阅读 · 4 评论 -
【NOIP2012提高组】国王游戏
Description恰逢H国国庆,国王邀请n位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这n位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。国王不希望某一个大臣获得特别多的奖原创 2016-03-13 01:20:57 · 3499 阅读 · 3 评论 -
【NOIP模拟】有趣的有趣的家庭菜园
Description职业经营家庭菜园的JOI君每年在自家的田地中种植一种叫做IOI草的植物。IOI草的种子在冬天被播下,春天会发芽并生长至一个固定的高度。到了秋天,一些IOI草会结出美丽的果实,并被收获,其他的IOI草则会在冬天枯萎。 JOI君的田地沿东西方向被划分为N个区域,从西侧开始的第i个区域中种植着IOI草i。在第i个区域种植的IOI草,在春天的时候高度会生长至Hi,此后便不再生长。如果原创 2016-04-08 19:12:35 · 1284 阅读 · 0 评论 -
【NOIP模拟】舳舻牌
DescriptionCZL发明了一种叫作舳舻牌的双人纸牌游戏,据说具有提神醒脑,延年益寿的功效。这次,CZL和他的对手YYY进行游戏,CZL先手。 首先,桌子上平铺着N张牌,从1至N标号。每张牌都有一个收益值,可正可负,收益值用Wi表示。每张牌对每个人都有一个诱惑值,与收益值无关。 游戏开始时,CZL先手,两人交替进行游戏。轮到某个人时,ta报出一个整数X,然后拿走桌上剩余的牌中所有诱惑值小于原创 2016-04-14 18:40:47 · 992 阅读 · 0 评论 -
【NOIP模拟】素数密度
Description给定区间L,R(L<=R<=2147483647,R-L<=1000000),请计算区间中素数的个数。Solution我们发现R-L不是很大,我们可以直接用质数筛掉。 质数我为了防止不够开到100000。要数组平移我们发现数组直接搞会爆掉,我们存的时候数组平移一下,就是存i-n就可以了。Code#include<iostream>#include<cstdio>#incl原创 2016-04-11 19:44:26 · 1435 阅读 · 0 评论 -
【NOIP模拟】备用钥匙
Description你知道Just Odd Inventions社吗?这个公司的业务是“只不过是奇妙的发明(Just Odd Inventions)”。这里简称为JOI社。 JOI社有N名员工,编号从1到N。所有员工的工作时间从时刻0持续到时刻M,时刻0和时刻M的时候,所有员工都必须在公司内。 某天,出于巧合,JOI社的每个员工都要出行恰好一次。员工i(1<=i<=N)在时刻Si离开公司,时刻原创 2016-04-16 23:52:18 · 1031 阅读 · 0 评论 -
【NOIP模拟】装饰大楼
Description国际信息学奥林匹克竞赛将要在日本召开了。为了欢迎全世界的选手们,委员会决定将从机场到宿舍沿路的大楼装饰起来。根据某著名设计师的设计,做装饰的大楼从机场到宿舍的方向必须高度严格递增。也就是说,如果做装饰的大楼从机场开始高度顺次为h1,h2,h3,…,那么必须满足h1Solution看完题之后表示没有看懂题目…….看了十分钟,表示日本的题意都埋有玄机,23333终于看懂了。 题意原创 2016-04-18 20:08:40 · 856 阅读 · 0 评论 -
【NOIP2015】IOIOI卡片占卜
DescriptionK理事长很喜欢占卜,经常用各种各样的方式进行占卜。今天,他准备使用正面写着”I”,反面写着”O”的卡片为今年IOI的日本代表队占卜最终的成绩。 占卜的方法如下所示: 首先,选择5个正整数A,B,C,D,E。 将A+B+C+D+E张IOI卡片排成一行,最左侧的A张卡片正面朝上,接下来B张反面朝上,接下来C张卡片正面朝上,接下来D张反面朝上,最后E张正面朝上。如此排列的话,从原创 2016-04-18 20:28:03 · 1139 阅读 · 0 评论 -
【NOIP模拟】平均数
Description给出包含一个N个整数的数组A。找出一段长度至少为K的连续序列,最大化它的平均值。 请注意:一段子序列的平均值是子序列中所有数的和除以它的长度。Solution一看到求什么最大最小值什么的就要想到用二分答案。 然后是平均数,要求他要大于某个数,那么我们就把这些数同时减去这个平均数,最后如果满足长度大于m的子串和不小于0就成立。那么我们怎样保证长度大于m我们循环从m到n循环,然原创 2016-06-26 07:53:56 · 1239 阅读 · 0 评论 -
【NOIP模拟】电话线铺设
DescriptionSolution用什么首先,他需要把n个点连接起来且只用n-1条边,还要使总边权和最小,那么很明显是最小生成树啦。 习惯用克鲁斯卡尔算法。怎么做不过此处有一个条件限制就是要加一条李牌的边,就是只选n-2条王牌的边。 那么很显然的是这n-2条边是在最小生成树上的边。 所以先建立最小生成树。 那么我们只要枚举所有李牌的边,替换一条李牌的边或建立一条新边,例如从x到y费用z,原创 2016-06-29 15:42:47 · 1417 阅读 · 0 评论 -
【NOIP模拟】立方体
DescriptionSolution刚看到这题,还以为是连边然后做spfa,然后答题后发现这样很麻烦。 然后在打暴搜的时候,发现在搜索的过程中状态数很少,然后暴搜的速度很快。 但是刚开始我用f[x][y]来记忆化到点(x,y)的最短距离,后来结果出来了只有40分,TAT。 才发现到达一个地方可能有多种不同的状态,所有还要多存几维,用f[x][y][k][l][t]表示到(x,y)这个点,前面原创 2016-07-15 19:06:20 · 961 阅读 · 0 评论 -
【NOIP模拟】修路
DescriptionSolution这题第一眼看上去有些懵逼,还以为是DP。 第二眼,哦,这么裸的最小生成树,2分钟打完,拍都没对,自信100分。 最终100分。 每条边的权值减去连个节点的权值,所有的边做一次最小生成树就好了。Code#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<原创 2016-07-15 19:25:13 · 819 阅读 · 0 评论 -
【NOIP模拟】计数
DescriptionSolution还以为是数位DP呢,实际上还是数位DP,最简单的数位DP。 设f[i,0]和f[i,1]表示到当前第i位,取0和不取0的方案数,转移很显然f[i,0]=f[i-1,1],f[i,1]=(f[i-1,0]+f[i-1,1])*(k-1)。 但是直接做会爆,要打高精度。 十分的水……Code#include<iostream>#include<cstdio>原创 2016-07-15 19:29:50 · 771 阅读 · 0 评论 -
【NOIP模拟】颜料大乱斗
DescriptionSolution开始看到前面的题目那么水,到这题时就开始胡思乱想了,待修改莫队?树套树?30棵线段树? 然后我打了30棵线段树,常数十分的大啊! 超时30分TAT。 然后旁边的人把30个颜色的值放到同一个节点上,然后就对了,????? 常数小而已嘛! 虽然两个方法的时间复杂度理论上是一样的。 其实就是每个节点存储30个颜色是否出现过,然后两个儿子向上合并就好了。Co原创 2016-07-18 08:58:17 · 834 阅读 · 0 评论 -
【NOIP模拟】大鱼海棠
Description椿是掌管海棠花的少女,她所在的世界不为人们所知,他们的天空就是人类的海底。生活在那个世界里的他们不是人,也不是鱼,而是其他人,掌管着人间的规律。 按照他们的习俗,在16岁那年,椿变为一条海豚到人间巡礼。在第六天,她被大海中的一张网困住,一个人类男孩因为救她而落入深海死去。为了报恩,她回去后私自一人去了如升楼找到灵婆(死去的好人的灵魂化为一条小鱼安放在那里)。她以自己一般的寿命原创 2016-07-18 09:08:56 · 1042 阅读 · 0 评论 -
【NOIP模拟】第三条跑道
DescriptionSolution一看到这种题就是数据结构。欧拉函数的公式看到求很多歌欧拉函数就要想到欧拉函数的公式。 φ(x)=x∗p1−1p1∗p2−1p2∗......∗pk−1pk\varphi(x)=x*{p_1-1\over p_1}*{p_2-1\over p_2}*......*{p_k-1\over p_k}用什么维护很明显的是600以内的质数的个数很少,只有110个左右。原创 2016-07-18 09:18:15 · 615 阅读 · 0 评论 -
【NOIP模拟】Angel Beats!
Description天使立华奏攻入了死后世界战线(SSS)的地下工会Guild,这是万分危急的时候。仲村由理指挥工会成员有条不紊地进行撤退工作。工会成员在Guild最深层工厂安放炸药需要很长的准备时间,需要有人来拖延立华奏的前进速度。但是他们并不清楚立华奏的具体位置,因此他们需要设立许多个防御点。 Guild的结构可以看成一棵有n 个节点的树,有时由理会得到立华奏的大概位置,可能在某两棵子树的任原创 2016-07-18 09:33:29 · 1537 阅读 · 0 评论 -
【NOIP模拟】寻找
DescriptionBob和Alice出去度蜜月,但Alice不慎走失,Bob在伤心过后,决定前去寻找Alice。 他们度蜜月的地方是一棵树,共有N个节点,Bob会使用下列DFS算法对该树进行遍历。starting_time是一个容量为n的数组 current_time = 0 dfs(v): current_time = current_time + 1 s原创 2016-07-18 10:07:11 · 531 阅读 · 0 评论 -
【NOIP模拟】锦标赛
Description403机房最近决定举行一场锦标赛。锦标赛共有N个人参加,共进行N-1轮。第一轮随机挑选两名选手进行决斗,胜者进入下一轮的比赛,第二轮到第N-1轮再每轮随机挑选1名选手与上一轮胜利的选手决斗,最后只剩一轮选手。第i名选手与第j名选手决斗,第i名选手胜利的概率是a[i][j]. 作为一号选手的富榄想知道如何安排每轮出场的选手可以使得他获胜的概率最大,并求出这个最大概率。Solut原创 2016-07-18 10:21:42 · 778 阅读 · 0 评论 -
【NOIP模拟】项链
Description经过一番周折,Bob找到了Alice,为了安慰Alice惊魂未定的心,Bob决定给Alice买一条手链,这条手链由M个珍珠组成,每个珍珠上刻着不同的小写字母。当Alice看到一些字母按照一定的顺序排列成的字符串时,就会产生一定的愉悦值。Bob现在可以在这M个珍珠上刻上字母,现在他想知道,如何刻字母可以使得Alice的愉悦值最大。SolutionAC自动机这是道很神奇的题目,我和原创 2016-07-18 10:51:29 · 1061 阅读 · 0 评论 -
【NOIP模拟】腐败
DescriptionSolution刚看到这种题,就想开始繁衍。。。。。。不对啊,这种东西怎么繁衍,并显示暴力加优化! 对每个数分解质因数,然后对每个因数开一个桶做,是不是很水。怎么处理空间问题可以动态开桶,但有一种更机智的方法。 因为如果有一个质数大于107−−−√\sqrt{10^7},那么这些质数在一个数分解质因数是最多只会出现一次,那么我们就有很多的质数不用刻意再取开一个桶了,直接用一原创 2016-07-19 20:05:17 · 801 阅读 · 0 评论 -
【NOIP模拟】弄提纲
Description新日暮里中,比冲是一位博学的哲学教授。由于最近要帮学生准备考试,他决定弄个提纲给学生。然而同事van不服气,觉得这样学生就没有了自我思考,便在提纲中添加废话。 比冲很无奈,他想找回原稿。我们把现在的提纲看成是一个字符串S。他知道van只会在原稿结尾添加语句,也就是说,原稿是S的前缀。 现在比冲有m个询问,以此来找出原稿。每次给出两个位置l,r,问以l与r结尾的字符串中,有多原创 2016-07-19 20:11:12 · 623 阅读 · 0 评论 -
【NOIP提高】Value
DescriptionSolution这种题很明显会有偏序关系,那么很明显的是w[i]越小越优。 那么排完序之后我们考虑DP。DP答案本来是用v-所有的w,倒数第j个对所有的w的贡献是(j-1)*w[i]。 设f[j]表示选到倒数第j个数,如果第j个选到的数是i。 所以当着枚举,那么这个i可以造成的贡献是v[i]-(j-1)*w[i],那么显然可以从f[j-1]推过来(倒数第j个)。Code#原创 2016-08-17 19:22:51 · 632 阅读 · 0 评论 -
【NOIP提高】Binary
DescriptionSolution维护位运算的题目一般都枚举每一个二进制位,来维护每个二进制位的信息。 那么要and y,访问y的每个二进制为1的节点,看看对应的位置有多少个。 但是这一题有一个很棘手的问题:怎么样才能处理加上任意数然后做位运算操作。 我们可以知道一个二进制j的位置上是1,说明2j−1...2j−12^{j-1}...2^j-1这段位置上有值,如果要加上x然后判断这个区间是原创 2016-08-17 20:15:48 · 706 阅读 · 0 评论 -
【NOIP模拟】千帆渡
DescriptionSolution比赛的时候就想到了正解,但是因为只剩下一个半小时,要打两题,就匆匆的打了过去,结果拿了零分。 设f[i][j]表示a的前i个与b的第j个匹配的最大值f[i][j]表示a的前i个与b的第j个匹配的最大值 显然可以f[i][j]=f[i−1][j]f[i][j]=f[i-1][j] 如果a[i]=b[j],如果是从a[k]和b[l]转移过来的,那么b[l]Co原创 2016-09-09 18:05:26 · 686 阅读 · 0 评论 -
【NOIP模拟】旷野大计算
Description**Solution这是一道套路题,不过我现在才学会套路。 对于莫队算法,进队统计答案很快,出队统计答案很慢的情况有一个套路:把所有的出队变成进队,每次询问的[l,r],把l放到l所在的块的末尾为l’,然后把l到l’-1的都入队,更新答案,因为右端点是递增的,所以右边就逐个进队就好了,然后结束的时候就把l’到l-1退队。每次l换块的时候,就把所有的数据暴力重构。Code#in原创 2016-09-09 18:12:41 · 1767 阅读 · 0 评论 -
【NOIP提高】公约数
Description给定一个正整数,在[1,n]的范围内,求出有多少个无序数对(a,b)满足gcd(a,b)=a xor b。Solution做过一道原题GCD和XOR。 瞬间切过。 gcd(a,b)≤a−b≤a⊕bgcd(a,b)≤a-b≤a⊕b(⊕是异或的意思) 因为gcd(a,b)=a⊕bgcd(a,b)=a⊕b 所以gcd(a,b)=a−b=a⊕bgcd(a,b)=a-b=a⊕b原创 2016-08-19 21:16:22 · 515 阅读 · 0 评论 -
【NOIP提高】树上路径
Description给出一棵树,求出最小的k,使得,且在树中存在路径p,使得k>=S且k<=E。(k为路径p上的边的权值和)Solution这个一眼的树分治啊! 但是标了NOIP的题不敢打树分治,结果TAT。 其实打了个不确定的方法,但是在不是菊花图的情况下跑的很快。 每次对每个点每个儿子的子树与这个点的距离放进一个数组里,然后数组两两合并,并同时求答案。 比如把一个儿子节点的所有值放进了原创 2016-08-19 21:41:24 · 890 阅读 · 0 评论 -
【NOIP模拟】Brothers
Description在遥远的西方有一个古老的王国,国王将他的王国分成了网格状,每一块称之为一个城市。在国王临死前,他将这些城市分给了自己的N个儿子(编号为0到N-1)。然而这N个王子的关系不是很好,0讨厌1,1讨厌2,2讨厌3……N-1讨厌0。 在国王死后,这种不好的关系使得王子之间爆发了战争。战斗只会在相邻的两个城市之间爆发(共有一条边称之为相邻),并且只有当A讨厌B时,A才会对B发起战斗,结原创 2016-09-10 14:12:01 · 370 阅读 · 0 评论 -
【NOIP模拟】Crisis
Description最近几年,一场新的金融危机爆发了,这场危机使得很多人陷入的经济问题的困境。一些X公司的员工试图通过要求加薪度过这一难关。 X公司有着严格的等级制度,除了公司所有者小H以外,其他人都有一个直属上司。没有下属的员工称为工人,其他人则称为领导者。 为了加薪,工人们都会向他们的上司提交请愿书。当然,每个领导者都希望自己的下属能够尽可能快乐的工作,所以当至少有T%的下属提交请愿书时,原创 2016-09-10 14:16:24 · 781 阅读 · 0 评论 -
【NOIP模拟】Word
Description有k个字符串{S1,S2,…,Sk},其中的每个字符不是空格,就是26个小写英文字母中的一个。对于常数 l和d,我们的目标是从这k个字符串中得出一个(l,d)-样词,它是一个长度为l的字符串W=W[1]W[2]…W[l],它的每个字符必须符合下面的条件: 每个字符串Si(i=1,2,…,k)都有一个长度为l的子串X=X[1]X[2]…X[l],X和W的出错率小于或等于d。(X原创 2016-09-10 14:20:33 · 623 阅读 · 0 评论