noip2016
河渔船
成长的小垃圾
展开
-
noip2016 d2t2 切蚯蚓
/* 题目描述 本题中,我们将用符号[c]表示对c向下取整,例如:[3.0」= [3.1」=[3.9」=3。 蛐蛐国最近蚯蚓成灾了!隔壁跳蚤国的跳蚤也拿蚯蚓们没办法,蛐蛐国王只好去请神刀手来帮他们消灭蚯蚓。 蛐蛐国里现在共有n只蚯蚓(n为正整数)。每只蚯蚓拥有长度,我们设第i只蚯蚓的长度为a_i(i=1,2,…,n),并保证所有的长度都是非负整数(即:可能存在长度为0的蚯蚓)。 每一秒,原创 2016-12-11 07:58:12 · 511 阅读 · 0 评论 -
NOIP 2013 火柴排队
评测传送首先要知道,最小距离是在两列火柴中,排名相等的两根火柴放在一行而产生的。 那么我们的任务就是计算让两列中的火柴达到上述状态需要交换的最小次数。(那么我们只交换a中的火柴就可以了) 我们想把a和b按照排名离散化一下。 然后把a中的数按照它在b中的位置赋值,求一下a中的逆序对就可以了(这时候的a要变成升序,想一想就知道了)。 当然也可以处理b。#include<iostream>#in原创 2017-10-17 11:23:28 · 276 阅读 · 0 评论 -
NOIP 2015 运输计划
评测传送二分答案+LCA+树上差分最好用Tarjan求LCA,有的oj会卡倍增。做法: 我们用LCA求出需要查询的每个计划的路径长度。 然后二分答案,check( )的时候,我们把大于mid的路径(因为这一些都是要去边的)求一下交点(边), 如果并非全都都交于一条边或者去掉交边后也不能让这些路径都小于等于mid,那么mid就是不可以的。 求交边时,用到树上差分。#include<iostre原创 2017-10-23 17:14:01 · 249 阅读 · 0 评论 -
NOIP 2015 疫情控制
评测传送二分答案+贪心。 越往上越优,所以在枚举的范围内,能往上就往上。 细节处理很重要。 我的代码有一处是待优化的,调了一下午,身心俱疲,不想再写了。 就这样吧 95分。#include<iostream>#include<cstdio>#include<queue>#include<cstring>#include<vector>#include<algorithm>#def原创 2017-10-23 11:31:46 · 373 阅读 · 0 评论 -
NOIP 2015 飞扬的小鸟
评测传送30分的搜索; 70分的裸dp; 100分的复杂度压缩。 需要注意的问题是H数组要初始化。我的代码一开始在没有到达终点而且没有飞过一颗柱子时是没有输出的,一开始在luogu,vijos上都过了,在uoj上检查出了这个小bug,已改。看了了这位大佬的博客,在此表示感谢和膜拜。 30分#include<iostream>#include<cstdio>#include<cstring原创 2017-10-20 13:52:04 · 384 阅读 · 0 评论 -
NOIP 2012 开车旅行
评测传送n^2预处理出最大值次大值。 模拟即可。 可以过掉70分。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<ctime>#include<cmath>#define LL long long#define DO doubleconst int N=100009;c原创 2017-10-19 15:26:01 · 247 阅读 · 0 评论 -
NOIP 2013 货车运输(最大生成树+倍增LCA/Tarjan)
评测传送最大生成树+LCA(倍增或Tarjan)我的Tarjan TLE了 倍增可以过,而且很快。倍增#include<iostream>#include<cstdio>#include<algorithm>#include<vector>#include<queue>#include<cstring>const int N=10009;const int M=50009;cons原创 2017-10-18 14:31:17 · 397 阅读 · 0 评论 -
NOIP 2012 Vigenere 密码
评测传送模拟呗。 我是打表过的。 貌似很无脑。 但是T1我就随便浪了。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<ctime>#include<queue>#define LL long longusing namespace std;char K[109],M[1原创 2017-10-19 14:07:10 · 365 阅读 · 0 评论 -
P1314 聪明的质检员NOIP 2011T2
https://www.luogu.org/problem/show?pid=1314#sub 看到这个题,想到二分是不难的,但是如果就直接上二分,简单暴力地求和,就会超时。O(mnlogw) 观察题目,区间可能是重合的或者叠盖,就考虑到前缀和来优化,将m*n缩减到m+n。 最终复杂度为O((m+n)*logw).#include<iostream>#include<cstdio>#inc原创 2017-06-12 10:12:31 · 539 阅读 · 0 评论 -
NOIP 2015[D1 T3]斗地主(30分的特判)
这个题是大暴搜,然而我只能写一下30分的特判。 前6个点是可以特判通过的。需要注意的问题:记录牌数的数组,在处理每组数据前一定要初始化。(一开始我得了0分)30分代码#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<vector>#include<queue>#include<c原创 2017-06-10 15:35:19 · 263 阅读 · 0 评论 -
斗地主(大暴搜)
大暴搜题; 搜索顺子,然后把剩下的牌按照四带,三带,对牌,单牌打出; 顺子有单顺,双顺,三顺。我一开始处理时把大小王分开处理了,不知啥原因不对,只有30 fen; 然后把大小王看做对牌后,就ac了。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<vector>#include原创 2017-06-11 17:08:40 · 306 阅读 · 0 评论 -
NOIP 2015[D2 T1] 跳石头
看到这个题,想到了二分答案。用二分的方法枚举最小距离x,和前面石块之间距离(变化)大于这个距离的石块就去掉,把去掉的石块数和m作比较,来变换x,最后找到答案; 但是,第一次写,没有想到如果前面的石块被去掉,那么后面的石块在判断距离时,就会受到影响,并不是一成不变的。结果只得了10 fen ; Besides,写一个正确的二分是很困难的对我来说,因为我记好的板子有时对有时错。如果有大神对二分精通,原创 2017-06-10 15:29:44 · 331 阅读 · 0 评论 -
NOIP 2012 国王游戏
评测传送贪心,按照a*b升序排序,如果相同,则a小的在前。如果直接上单纯的计算会炸掉,60分。需要加高精。我压了4位。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<ctime>#include<queue>#define LL long longconst long long原创 2017-10-19 14:11:01 · 337 阅读 · 0 评论