码迷,mamicode.com
首页 > 其他好文 > 详细

[题解+总结]NOIP历年题目分析

时间:2015-09-14 13:49:44      阅读:394      评论:0      收藏:0      [点我收藏+]

标签:

1、前言

  迎接NOIP的到来。。。在这段闲暇时间,决定刷刷水题。这里只是作非常简单的一些总结。

 

2、NOIP2014

<1> 生活大爆炸之石头剪刀布(模拟)

这是一道考你会不会编程的题目。。。方法有很多,预处理输赢矩阵,或者一大堆if什么的乱搞就行了。

 

<2> 联合权值(搜索)

简单的树上求解问题,由于只需要长度为2的链,只要能够清楚地分析出各种情况,一遍DFS直接出来:自身节点与祖父节点有一对;自身节点与兄弟节点有若干对。在计算权值的时候存在一个优化,即如果每次得到一对之后就计算貌似会超时,我们可以对于每一个点记录与其距离为2的点,求和,最后在相乘。

 

<3> 飞扬的小鸟(动态规划)

完全背包动态规划+优化。个人感觉70分的裸DP比50分暴力还好拿些,毕竟搜索写起来比较麻烦。但是由于n<=10^5(貌似是的?),O(n^2)是过不了的,需要强加优化至O(n log n)。

 

<4> 无线网络发射器(模拟)

这道题给我们的教训就是,预估时间复杂度是很重要的。听说考场上有多人加些优化然后跪了的。。。数据范围极小,所以我们暴力枚举地图上所有点,然后求在发射器范围内点的个数,所以这又是一道考你会不会变成的题目。

 

<5> 寻找道路(搜索/最短路)

正反进行两次搜索(DFS/BFS/SPFA均可,但是推荐BFS+SPFA),第一次求得所有可以经过的点;第二次直接跑就是了。

 

<6>解方程 (高精度/哈希/其他)

这次NOIP唯一上点档次的题目吧?30分暴力;50分直接高精度;70分的话就需要一定技巧了,取几个合适的模,然后进行判断,在取模意义下为0就认为是为0。注意到在mod p的情况下,将x和x+kp代入,解显然是相同的,所以随便搞搞就行了。用FFT什么的就不说了。

 

3、NOIP2013

<1> 转圈游戏(GCD+快速幂)

转圈次数无比之大,但是显然结果是存在循环的。首先通过寻找规律,求得循环节,然后利用快速幂,求得答案。

 

<2> 火柴排队(逆序对+树状数组)

这道题个人觉得有点非主流。首先我确保我考场上写搜索,写贪心,写动规,但是觉得不会知道逆序对这种东西,毕竟我YY能力有限的。。。。知道逆序对之后,基本就保证80分了,因为直接O(n^2)循环就行了;但是由于100分数据,n<=10^5,故需要利用树状数组优化到O(n log n)。

 

[题解+总结]NOIP历年题目分析

标签:

原文地址:http://www.cnblogs.com/jinkun113/p/4806745.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!