- 博客(7)
- 收藏
- 关注
原创 NOIP2017提高总结
即便去年初二已经一等过,今年再一次进考场还是很紧张,看着周围的大佬们不觉中手都有点抖…两天6小时全部在高度紧张状态下….打开题面之后,我看了一下三道题,T1没啥思路,T2就是裸的表达式处理感觉没什么难度,T3也没什么思路,于是果断20分钟打完T2开始想T1。一开始我看来题就想到了扩展欧几里得算法,推了一波发现是个不等式然后试图化简发现怎么化简都是线性的肯定T了。静下来好好一想D1T1怎么可
2017-11-23 18:28:02
1125
2
原创 NOIP2017提高组D2T3[列队]
题意:给一个n行m列的方阵,第i行第j列的人编号为(i-1)*m+j,每次会有一个人出列,所有人先向m=1一列补齐,再向n=1一行补齐,然后出列的人补在n行m列,问每次出列的人的编号。题解:平衡树动态开节点,每行前m-1个人记录一个平衡树,最后一列单独记一个平衡树,最好用Splay或者无旋Treap。代码:#include #include #include #inclu
2017-11-22 22:51:31
641
原创 NOIP2017提高组D2T2[宝藏]
题意:给定一个无向连通图,请你选一个点做根,并选一个原图生成树使得生成树的所有边与边的端点到根在生成树上经过的点数的成绩之和最小,输出这个最小值。题解:状压DP,枚举根,f[i][S]表示S集合中的节点构成生成树且距离根最大距离为i的最优解,预处理出一个点与一个点集中的点的最短距离,枚举补集转移即可。代码:#include #include #include #inclu
2017-11-22 22:46:41
674
原创 NOIP2017提高组D2T1[奶酪]
题意:一个长宽无限的立方体中有一些空洞,相交或者相接的空洞可以互相到达,跟立方体下表面相交或相切的空洞可以从下表面到达,上表面同理,问是否可以从下表面到达上表面。题解:建图之后floodfill,注意建图可能爆long long或者double的精度问题。代码:#include #include #include #include #include #include
2017-11-22 22:39:54
679
原创 NOIP2017提高组D1T3[逛公园]
题意:给定一个有向图,设1到n的最短路径长度为d,问有多少从1到n长度在d~d+k(k给定)之间的路径(mod p)。题解:先两边Dijkstra算出最短路径树,然后在最短路径树上拓扑排序,若不能排序(意味着有0环)则有无数条满足要求的路径,否则排完序后按拓扑序DP得到答案。代码:#include #include #include #include #include
2017-11-22 22:32:35
929
原创 NOIP2017提高组D1T2[时间复杂度]
题意:给一个只有循环的程序,询问该程序的时间复杂度,每个循环都是形如 F i a b,其中i表示循环变量,a,b表示从a循环到b,其中a,b的取值有可以是常数或n,n是一个巨大的变量。然后每个循环开始的F会对应一个E结束。你要判断程序是否合法(即循环是否匹配,是否有重复的循环变量),如果程序合法则输出时间复杂度。题解:表达式处理裸题,递归处理每层循环即可,开始的时候用栈将循环匹配一边。
2017-11-22 22:27:27
826
原创 NOIP2017提高组D1T1[小凯的疑惑]
题意:给定a,b问使得关于非负整数x,y的方程ax+by=d无解的最大的正整数d。题解公式题:ans=ab-a-b。证明略,其实可以打个表找规律(划掉)代码:```C++#include#include using namespacestd; long long a,b; int main(){ freopen("
2017-11-22 22:14:10
930
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人