NOIP2010~2017部分真题总结
NOIP2010~2017部分真题总结
2010
(吐槽)md这个时候的联赛还只有4题吗?
引水入城
只要发现对于有合法解的地图,每个蓄水厂贡献一段区间这个结论就很好做了
那么\(O(n^3)\)对每个蓄水厂的dfs一遍,判掉有无解之后贪心线段覆盖
所以这是个爆搜+性质+贪心题?
关押罪犯
贪心+并查集
贪心显然正确,那么并查集维护一下每个点的补集就没了
机器翻译
暴力模拟
乌龟棋
dp
\(f[i][j][p][q]\)表示剩余4中卡片多少张,四方枚举dp一下
或者\(f[i][j][p][q]\)当前到第i格,三种卡片的张数(这样可以算出第四种剩多少),酱紫dp一下也行?
2011
铺地毯
模拟
既然你只询问一个格子,那么我也只维护一个格子好了,\(O(n)\)
选择客栈
现在看来有个复杂的方法,
对每种颜色搞个前缀和,预处理个st表,
枚举左端点二分st查区间最小值
\(O(nk)\)因为log比k小...
所以是个RMQ?
Mayan游戏
搜索
不会
计算系数
组合数
答案就是\(a^n*b^m*\binom{k}{n}\)
聪明的质监员
二分w,前缀和统计check
观光公交
贪心
发现加速器的使用互相独立,考虑每次选择对答案减少最多的路段减1,
可以每次\(O(n)\)处理出公交车到达每个点的时间,以及每个路段能影响到的最后一个点(要停下来等人就算影响不到了),设为\(f_i\)
于是对i这段路减1的贡献就是\(\sum_{j=i+1}^{f_i}down_j\)
前缀和维护下站人数即可
总复杂度:\(O(nk)\)
2012
(吐槽)2012就两紫了woc...
(吐槽)还一年考两道倍增???
Vigenère 密码
好久远了,不记得了...
大概是模拟或者找规律?
国王游戏
贪心+高精
左手*右手大的放后面
关于这类排序贪心的证明可以考虑交换前后两个答案的变化
开车旅行
预处理出从每个点出发由A/B开车的下一个点以及距离(二分+树状数组搞一搞)
每次倍增求答案
同余方程
它大概是个...exgcd板子???
借教室
可以直接线段树直接维护最小值做
显然二分+差分更好写是吧
疫情控制
贪心+倍增
显然一个军队越靠近根越优,我们二分一个t,把军队尽量往上提,特判一下根的儿子的情况,
提的过程就倍增实现
2013
转圈游戏
它大概是个...快速幂模板???
火柴排队
我始终觉得此题巨火无比
发现一根火柴在第一列排第k,那么它就要与第二列火柴排第k的匹配,
然后因为只能swap相邻两个,
所以离散化之后映射到下标,\(O(nlogn)\)求逆序对数就是答案
货车运输
构最大生成树,倍增
积木大赛
第一次写这个题wtm以为线段树的说...
每次在高度下降的时候统计答案就好
花匠
贪心,单调性改变时算答案
华容道
好难不会
2014
生活大爆炸版石头剪刀布
模拟
联合权值
这个东西dfs就好了吧,对相邻的点乘法原理搞一搞
飞扬的小鸟
好难啊
向上做完全背包
向下做01背包
好像对背包的顺序还有要求...
无线网络发射器选址
这不是暴力吗?
寻找道路
建反边bfs一遍找到所以满足条件1的点,再建图跑最短路
解方程
用小伟教的秦九韶\(O(n)\)求多项式的值,
\(O(mn)\)做就行
这个系数就考虑对大质数取模吧,多模几个稳一些
2015
神奇的幻方
按它的规则模拟就行
信息传递
有向图最小环
写个tarjan又不会死
斗地主
搜索啊,不会
跳石头
二分答案
子串
神仙dp
\(f[i][j][k]\)表示A前i个,B前j个,匹配了k个的方案数
\(s[i][j][k]\)表示A前i个,B前j个,匹配了k个且强制\(A_i=B_j\)的方案数
\(s[i][j][k]=f[i-1][j-1][k-1]+s[i-1][j-1][k]\)
\(f[i][j][k]=f[i-1][j][k]+s[i][j][k]\)
第一维滚掉
运输计划
先求出所有计划的时间
二分答案之后对超时的计划树上差分,找到一条被所有不合法计划都经过的边,
如果最大值-该边长度合法,那么该答案合法
2016
玩具谜题
模拟
天天爱跑步
有点长,看这里
换教室
设\(f[i][j][0/1]\)表示前i个时间段,申请换了j次,当前这次成功与否
枚举转移就行
预处理就是跑一个\(O(n^3)\)的最短路
组合数问题
注意到k是固定的,递推式求组合数模掉k,再求二维前缀和就没了
蚯蚓
不会呢
愤怒的小鸟
直接bfs搜过去了??
具体还可以看这里
2017
(吐槽)今年再考结论我就死了...
小凯的疑惑
a*b-a-b
时间复杂度
模拟,开栈记录变量名,标记一下是否在死掉的循环中
逛公园
k只有50,设\(f[u][k]\)表示到u点比最短路长度不超过k的方案数
判0环:如果dp的时候搜到还在栈中的状态那么就有0环
具体还可以看这里
奶酪
把空洞,上下界看成点,把连通的并起来,最后看上下界是否连通
宝藏
状压dp
虽然复杂度可能有点假但能过就懒得管了
\(f[s]\)表示已开发的集合为s的最小代价
枚举起点记搜一下
列队
暴力维护每一行和最后一列的splay显然爆空间
所以一开始一个点维护一行,操作就split开,这样空间大约就是\(O(q)\)的
NOIP2018加油!
君指先跃动の光は、私の一生不変の信仰に、唯私の超電磁砲永世生き!
NOIP2010~2017部分真题总结的更多相关文章
- NOIP2010提高组真题部分整理(没有关押罪犯)
目录 \(NOIP2010\)提高组真题部分整理 \(T1\)机器翻译: 题目背景: 题目描述: 输入输出格式: 输入输出样例: 说明: 题解: 代码: \(T2\)乌龟棋 题目背景: 题目描述: 输 ...
- 数百道BAT等大厂最新Python面试真题,学到你手软!
春招临近,无论是要找工作的准毕业生,还是身在职场想要提升自己的程序员,提升自己的算法内功心法.提升 Python 编程能力,总是大有裨益的.今天,小编发现了一份好资源:Python 实现的面试题集锦! ...
- 美团点评2017校招笔试真题-算法工程师A
美团点评2017校招笔试真题-算法工程师A 1.下面哪种STL容器的实现和其它三个不一样 A. set B. deque C. multimap D. map 正确答案: B STL的容器可以分为以下 ...
- 美团点评2017校招笔试真题-算法工程师B
美团点评2017校招笔试真题-算法工程师B 1.以下关于经典的k-means聚类的说法哪个是错误的? A:k-means聚类算法是全局收敛的 B:k-means的聚类结果和初始聚类中心点的选取有关 C ...
- ACM-ICPC(10 / 10)——(完美世界2017秋招真题)
今天学了莫比乌斯反演,竟然破天荒的自己推出来了一个题目!有关莫比乌斯反演的题解,和上次的01分数规划的题解明天再写吧~~~ 学长们都在刷面试题,我也去试了试,120分钟,写出6题要有一点熟练度才行.先 ...
- 蓝桥杯Java真题解析
上个月参加蓝桥杯省赛拿了个省一,自从比赛完之后就一直没怎么写代码了,还有一个多月就要国赛了,从现在开始准备下国赛,但是我也不想学什么算法,而且我还在准备考研,所以就打算只做下历年的真题,争取国赛拿个国 ...
- Noip前的大抱佛脚----Noip真题复习
Noip前的大抱佛脚----Noip真题复习 Tags: Noip前的大抱佛脚 Noip2010 题目不难,但是三个半小时的话要写四道题还是需要码力,不过按照现在的实力应该不出意外可以AK的. 机器翻 ...
- 1054. 求平均值 (20)-PAT乙级真题
今天刚刚到学校,2017年学习正式开始了,今天看到了浙大的<数据结构>这学期又要开课了,决定一定要跟着学习一遍:在大学生mooc网上学习:http://www.icourse163.org ...
- 2016.1.4~2016.1.7真题回顾!-- HTML5学堂
2016.1.4~2016.1.7真题回顾!-- HTML5学堂 2015悄然而逝,崭新的2016随即而行!生活需要新鲜感,学习JavaScript的过程需要有成就感!成就感又是来自于每一天的不断练习 ...
随机推荐
- 用尽洪荒之力整理的Mysql数据库32条军规(转)
今天上午吐血整理了Oracle SQL性能优化的40条军规,其中很多规则也是适用于Mysql的,结果今晚发现这一篇文章——用尽洪荒之力整理的Mysql数据库32条军规,和我的竟有异曲同工之妙,当然不同 ...
- Quartz的cron表达式 (spring定时器 crontab)
http://tangshuo.iteye.com/blog/184824 表达式位数最少六位,如每天凌晨一点启动:"0 0 1 * * ?" 顺序按 秒 分 时 日期 月份 ...
- c#中从string数组转换到int数组及比较两个字符串相等
string[] input = { "1", "2", "3", "4", "5", " ...
- 李洪强iOS下的实际网络连接状态检测
iOS下的实际网络连接状态检测 序言 网络连接状态检测对于我们的iOS app开发来说是一个非常通用的需求.为了更好的用户体验,我们会在无网络时展现本地或者缓存的内容,并对用户进行合适的提示.对绝大部 ...
- 李洪强漫谈iOS开发[C语言-001]-开发概述
- 查看zookeeper是否启动
查看进程: 方法: ps -aux | grep 'zookeeper' 系统有返回,说明zookeeper启动. 你可以搜索ps -aux.
- codeblocks如何watch指针
如果这个指针是指向一个一维数组,那么在watch窗口中右击并选择Dereference,会看到数组的第一个元素 如果这个指针是指向一个struct,那么在watch窗口中右击并选择Dereferenc ...
- deepin linux下eclipse c/c++ 调试开源代码
1.deepin linux 下使用eclipse c/c++ 调试2. 编译选项,-g3 -O0,-g3表示输出调试信息,-O0不优化代码(第一个字母o的大写,第二个是数字0) 3.必备环境: gd ...
- ajax请求后台返回map类型并如何展示
前台jsp或者ftl文件接收返回结果: <input type="hidden" name="selectedModelListStr" id=" ...
- iOS视频压缩存储至本地并上传至服务器
最近做了一个项目,我把其中的核心功能拿出来和大家分享一下,重点还是自己梳理一下. 这里关于视频转码存储我整理了两个方法,这两个方法都是针对相册内视频进行处理的. 1.该方法没有对视频进行压缩,只是将视 ...