
NOIP历年真题
ZGS_WZY
这个作者很懒,什么都没留下…
展开
-
NOIP提高组 D1_T3 逛公园
题意想必大家都很清楚,(其实是特水的作者太懒了)算法:(其一) 首先对于原图的每一条边正着建在一张图中,再反着建在一张图中,我们对于那个反向图跑一遍SPFA,处理出点N到每一个点的最短路径的长度。 然后用记忆化搜索,dfs(u,now)表示反向图中从u跑到n用了(最短路径+now)的路径数,至于状态的转移各位直接看程序即可。 特别的,我...原创 2018-07-17 13:49:17 · 362 阅读 · 0 评论 -
[NOIP2017]_D2T2 宝藏
广为Oier所知的状压题,就不提供链接了(其实还是我懒)解法: 奇(chao)妙(bu)玄(zheng)学(jing)的模拟退火算法程序:#include<bits/stdc++.h>#define rep(i,j,k) for(int i=j;i<=k;i++)using namespace std;inline int read(){...原创 2018-08-25 13:27:52 · 330 阅读 · 0 评论 -
【NOIP2014】 联合权值
题意链接解法: 预处理统计出每个节点与其相连的所有节点中,所有点的权值之和,与点权第一第二大的两个, 然后枚举每一个点算出包括改点的有序点对中的联合权值的最大值和联合权值的总和即可。Code:#include<bits/stdc++.h>#define rep(i,j,k) for(int i=j;i<=k;i++)#...原创 2018-10-13 22:34:42 · 287 阅读 · 0 评论 -
【NOIP2016】蚯蚓
题面链接算法: 我们将蚯蚓长度分成三个数组存储,原先就有、切掉后长度为⌊px⌋、 切掉后长度为x −⌊px⌋。 在记录下每一个蚯蚓出现时间(原先就有的都是0时出现),和每一个数组的第一个和最后一只蚯蚓所在坐标。 在完成m次骚操作后,我们用一个vector将所有还活着的蚯蚓整合起来,排个序,愉快输出即可。Code:#i...原创 2018-10-25 19:20:05 · 472 阅读 · 0 评论 -
【NOIP2015】子串
题目链接算法: 鸽鸽鸽了。。。。。 Code:#include<bits/stdc++.h>#define rep(i,j,k) for(int i=j;i<=k;i++)#define mo 1000000007using namespace std;template<typename T> void chkmo(T ...原创 2018-10-26 22:40:51 · 372 阅读 · 1 评论 -
【NOIP2014】寻找道路
题目链接算法: 先反向建图,从终点开始BFS,找出所有与其连通的点 其次,考虑到图不一定联通,我们特殊处理那些压根就不会与终点在一个联通块里的点 最后,愉快单源最短路即可Code:#include<bits/stdc++.h>#define rep(i,j,k) for(int i=j;i<=k;i++)...原创 2018-10-30 19:30:34 · 317 阅读 · 0 评论 -
【NOIP2016】愤怒的小鸟
题目链接补档博客,无题解Code:#include<bits/stdc++.h>#define rep(i,j,k) for(register int i=j;i<=k;i++)#define double long doubleusing namespace std;template<typename T> void chkmin(T &...原创 2018-11-05 20:25:32 · 763 阅读 · 0 评论 -
【NOIP2018】提高组题解
Day 1:T1:铺设道路 贪心题,原数列可分解成若干个非递减序列(或要加上一个递减序列),处理出每个序列的最高值与最低之差的总和即可。#include<bits/stdc++.h>#define rep(i,j,k) for(int i=j;i<=k;i++)using namespace std;template<typename T>...原创 2019-01-17 20:59:06 · 1030 阅读 · 0 评论