NOIP2017普及组复赛-解题报告

NOIP2017普及组复赛-解题报告

ID:37286175

大小:491.00 KB

页数:3页

时间:2019-05-20

NOIP2017普及组复赛-解题报告_第1页
NOIP2017普及组复赛-解题报告_第2页
NOIP2017普及组复赛-解题报告_第3页
资源描述:

《NOIP2017普及组复赛-解题报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、衢州市兴华中学NOIP2017普及组复赛By冯明浩NOIP2017普及组复赛-解题报告衢州市兴华中学By冯明浩Score成绩题目大意给出三个整十数A,B,C,求A*20%+B*30%+C*50%的值考察算法模拟算法一直接粗暴地输出A*0.2+B*0.3+C*0.5时间复杂度:O(1)期望得分:100算法二由于分数均为整十数,先将分数各除以10,再直接输A*2+B*3+C*5。这样就避免了精度问题时间复杂度:O(1)期望得分:100librarian图书管理员题目大意给出N个数Ai,再进行Q次询问

2、,找后缀为给定数Bi的最小的Ai考察算法模拟算法一将Ai及Bi都转化成字符串。每次询问都对N个数进行后缀比较,挑出个最小的时间复杂度:O(N*Q*len)期望得分:80算法二对算法一的比较进行优化——构造出nlen10,对于Ai,直接AiMod10,判断是否相等。这样每次比较的时间复杂度优至O(1)同时先将Ai排序,再每次从小到大查询,一旦找到就停时间复杂度:小于O(N*Q)(一般情况)期望得分:100算法三读入Ai时进行处理,构造ans[x]数组,记录询问X的最小值。对于每个Ai,依次取出其后

3、1、2、3……len位,修正其的最小值。这样每次查询,就可以O(1)出结果了时间复杂度:O(N*len)空间复杂度:O(max(Bi))期望得分:100Chess棋盘题目大意给出一个N*N的矩阵,其中部分格有颜色每次可以从一个格向上下左右四个方向移动一格(不能越出矩阵且满足条件),根据两个格子的颜色有不同的代价求从左上角走至右下角的最小代价考察算法最短路(动态规划)算法一直接暴力地按照题意进行DFSn*n期望得分:30时间复杂度:O(2)算法二以左上角为起点,右下角为终点,刷四个方向的SPFA第

4、1页/共3页衢州市兴华中学NOIP2017普及组复赛By冯明浩(也可预先对相邻格建好边,刷最短路SPFA或DIJ或进行记忆化DFS)时间复杂度:O(k*n*n)期望得分:100Jump跳房子题目大意给出N个格子的位置Xi与价值Pi,从起点0往右跳跃,初始跳跃的距离只能为d同时可以花费金币来调整其跳跃距离,花了t个金币时可跳跃的距离为max(1,d-t)~(d+k)每遍历一个格子就会获得其代价Pi,求要获得总价值为K所需最少的金币数考察算法二分、动态规划、单调序列(堆)算法一从小到大枚举所需金币数

5、,用O(N*N)的DP进行check,一旦发现可行就为答案时间复杂度:O(max(Ai)*N*N)期望得分:20算法二分析发现,枚举的金币数越多,跳跃范围越大,总价值一定越多——满足二分答案的单调性,于是将算法一的枚举答案变为二分枚举max(Xi)时间复杂度:O(log*N*N)期望得分:502算法三分析一下DP的转移方程:F[i]=max(F[j])+P[i](max(1,d-t)≤a[i]-a[j]≤d+k)就会发现DP的j这次循环是为了找F[1~i-1]中的最大值,自然而然就想到了用堆优化

6、——堆中存放F[1~i-1],若堆顶距当前X[i]大于d+k,就丢掉该元素(再也没用)否则若堆顶距当前X[i]小于max(1,d-t),就暂存在临时数组中,最后在当前解更新好后记得塞回去则F[i]=F[heap[1]]+P[i]max(Xi)N时间复杂度:O(log*N*k*log)期望得分:8022算法四继续优化算法三的DP:那些离当前X[i]太近的实际上完全没有必要塞入堆中,那么再另开一个变量j记录当前往堆中塞入的最后一个元素。每次将与当前X[i]的距离大于等于max(1,d-t)的塞入堆中

7、,只要检查一下堆顶是否太远即可,就保证了每个节点当且仅当入堆一次,时间复杂度中k就消去了max(Xi)N时间复杂度:O(log*N*log)期望得分:10022算法五在算法四的基础上再思考一下,其实也没有必要用堆了。因为X[i]是在不断增大,那么对于F[x]=F[y],显然距离起点远的更有用,即一旦F[y]进堆,F[x]就没有存在的意义了(X[x]

8、的干掉,后面再如上进行维护,每次抓序列的头就是前面的最优解:F[i]=F[que[hed]]+P[i]N于是连堆的log也成功去掉了2第2页/共3页衢州市兴华中学NOIP2017普及组复赛By冯明浩max(Xi)时间复杂度:O(log*N)期望得分:1002另:除了上面的算法外,不排除还有其他更优的解法。第3页/共3页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。