NOIP越发接近了,于是自己也跟着机房的几位师兄一起做了几次NOIP模拟赛,收获颇多。

#1-T1:求点集中的点能否只用三条与坐标轴平行的直线就能全部被经过,其实只要将横纵坐标排序后逐个点检查下就行。

#1-T2:先算出结束时每头牛跑了几圈,然后对于小数部分离散化,最后按照从小到大统计Sum([d[i]-d[j]])(1<=i<j<=n)【用树状数组】

#1-T3:单调队列+线段树【其实本人认为不用,貌似加个链表就行了】

#2-T1:O(n)解法,直接模拟数字进位的情况。O(k)解法,HYJ大神搬出了组合数学大法,貌似是先把最高位的1先求出来,然后从高到低求。

#2-T2:求一个无向图的最小环,这个环中一定要包括K个点和另外(n-k)个点的其中一个。先对K个点跑一次Spfa,求出这K个点至其他点的最短距离,然后枚举另外(n-k)个点分别加入环,求环的长度,取最小的环。

#2-T3:题意略长。O(n^2),枚举AB串的各个字符,若相同则求有多少f(x,y)包含此对相同字符,并+1,最后统计f的总和。O(nlogn),应用前缀和思想。

#3-T1:读懂了题意,也就是sort+去重而已,但由于精度问题,我们要定义分数结构体来储存小数。

#3-T2:直接模拟,加并查集优化。

#3-T3:正解理解不能。。。

#4-T1:将边从大到小加入图,并保证K个点彼此之间不相连,若不能保证就将此边作为答案的割。

#4-T2:从右到左的KMP。

#4-T3:DP,三个状态:至第i行,已出现j块,最下面一行的形状。然后12个状态转移方程。

#5-T1:用2^n模拟K个糖果的分配,然后根据每个概率局面再用2^n求出通过的概率。

#5-T2:利用最小生成树的加边成环性质,从大到小删边并求边左边和右边的的节点个数,进行计算并加入答案。

#5-T3:将原数据弄成二元组(i,j),i为数据大小,j为数据位置,然后按i为第一关键字,j为第二关键字从小到大排序;对于每个询问x,y,z用二分查找第一个大于等于(z,x)的二元组,然后判断此二元组是否小于等于(z,y)。

#6-T1:因为a是保证大于0的,所以F(x)是一个单峰函数,于是用三分法做。

#6-T2:Splay、Treap乱搞。正解是优先队列,也就是用堆维护左边最大的,右边最小的蛋糕。

#6-T3:正解理解不能。。。【果然太弱】

#7-T1:题目要求选几个数,使得在满足总和不超过某个数的情况下总和最大。搜索+加剪枝。先从大到小选,然后加入剩余的能全部加入就全部加入,不再进行搜索。

#7-T2:DP,用单调链表维护决策单调性。【有可能被卡,So可以用线段树维护决策单调性】

#7-T3:数论。从(a,b)走到(m,n)共有C(m-a,m+n-a-b)种方案,由此可推得“总路径数=总方案数-路径相交方案数=C(m,m+n)*C(m,m+q-p)-C(m,m+q)*C(m,m+n-q)”接着高精度Mod?吃我大乘法逆元啦!

#8-T1:对于每个魔法属性将树分成两个子点集,然后判断每对点在每个属性中是否同属于一个点集。

#8-T2:先把无根树转成有根树。然后不断枚举边,求经过这条边的所有路径并统计,最后删边。

#8-T3:对于每次剩余的操作距离查找最小的字母,然后将此字母移动至最前,O(n^2)。用字母链表+树状数组优化,O(n*logn)。

#9-T1:Ans=Sum(φ(i))(1<=i<=n),然后线性筛。

#9-T2:先贪心选取最优砖块,然后倍增。

#9-T3:线段树维护s[i]=k[i]-k[i-1],然后对于每次修改只需将s[i..j]+1,s[j+1]-=(j-i+1),对于每次询问只需查询Sum(s[1..i])。

#10-T1:博弈论+记忆。

#10-T2:先求出往左右上下的长度,然后每条对角线分别用树状数组优化处理。

#10-T3:状压DP+快速矩阵幂【NOIP怎么可能考这种题?】【于是成残念#1】

#11-T1:先假设所有作业都是通过喝咖啡秒速完成的,然后一小时一小时慢慢节省性价比最高的咖啡。

#11-T2:从Max(m[i])至1枚举k,并求出n个数中k的倍数的个数。

#11-T3:用SPFA+SLF优化(若d[i]<=d[head]则放在队头)+LLL优化(若d[head]>=AveD则移到队尾并重新判断)求起点与终点至各个点的最短路,然后判断每条有向边是否在最短路网中,最后用拓扑排序求某条边是否是最短路网的割边。

#12-T1:斐波那契数列分裂题型。求出最大方案并进行分裂。

#12-T2:对于每次操作(x,y)g[x]++,然后对于相同属性的分身的话按深度从大到小并g[lca(x1,x2)]--,然后每个点的答案就是以它为根的子树的SumG。

#12-T3:正解不会。。。。

#13-T1:求树上任意两点的路径是否经过某条边。先DFS序处理,然后对于每次询问判断边底下的子树是否包含起点和终点。

#13-T2:KMP的失配函数的妙用。

#13-T3:DP套DP套DP。

NOIP一系列模拟赛小结的更多相关文章

  1. NOIP前模拟赛总结

    NOIP前模拟赛总结 from 2018.10.7 to ??? Date Name Score(Rank) Problems 2018.10.7 McfXH AK Contest 42(?) 期望得 ...

  2. 模拟赛小结:2017-2018 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2017)

    比赛链接:传送门 本场我们队过的题感觉算法都挺简单的,不知道为啥做的时候感觉没有很顺利. 封榜后7题,罚时1015.第一次模拟赛金,虽然是北欧的区域赛,但还是有点开心的. Problem B Best ...

  3. 模拟赛小结:2017 China Collegiate Programming Contest Final (CCPC-Final 2017)

    比赛链接:传送门 前期大顺风,2:30金区中游.后期开题乏力,掉到银尾.4:59绝杀I,但罚时太高卡在银首. Problem A - Dogs and Cages 00:09:45 (+) Solve ...

  4. 模拟赛小结:2015-2016 ACM-ICPC, NEERC, Northern Subregional Contest

    2015-2016 ACM-ICPC, NEERC, Northern Subregional Contest 2019年10月11日 15:35-20:35(Solved 8,Penalty 675 ...

  5. 模拟赛小结:2014-2015 ACM-ICPC, NEERC, Southern Subregional Contest

    2014-2015 ACM-ICPC, NEERC, Southern Subregional Contest 2019年10月11日 15:30-20:30(Solved 6,Penalty 740 ...

  6. 模拟赛小结:2018-2019 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2018)

    比赛链接:传送门 两个半小时的时候横扫了铜.银区的所有题,签到成功混进金区.奈何后面没能开出新的题. 最后一个小时的时候xk灵机一动想出了D题的做法,讨论了一波感觉可行,赶紧去敲.结束前2分钟终于过了 ...

  7. NOIP欢乐模拟赛 T1 解题报告

    小澳的方阵 (matrix.cpp/c/pas) [题目描述] 小澳最近迷上了考古,他发现秦始皇的兵马俑布局十分有特点,热爱钻研的小澳打算在电脑上还原这个伟大的布局. 他努力钻研,发现秦始皇布置兵马俑 ...

  8. 模拟赛小结:The 2019 China Collegiate Programming Contest Harbin Site

    比赛链接:传送门 上半场5题,下半场疯狂挂机,然后又是差一题金,万年银首也太难受了. (每次银首都会想起前队友的灵魂拷问:你们队练习的时候进金区的次数多不多啊?) Problem J. Justify ...

  9. 模拟赛小结:2019-2020 ICPC, Asia Jakarta Regional Contest

    比赛链接:传送门 离金最近的一次?,lh大佬carry场. Problem A. Copying Homework 00:17(+) Solved by Dancepted 签到,读题有点慢了.而且配 ...

随机推荐

  1. Java、Node.js、PHP还是.Net? 无论你选谁,我都能教你一招!

    七夕如期而至,不该来的终究还是来了.再傲娇的单身贵族恐怕也难免在今天会感觉一丝丝的空虚.还好你关注了我,因为接下来我准备了三大招教你一个人…..也可以优雅地过七夕. 招式一:移形幻影,无中生有 七夕当 ...

  2. 【Web应用-网络连接】Azure Web 应用对外连接数上限分析

    在 Azure Web 应用中发起大量外部连接操作时,需要考虑已经建立了多少外部连接.当超过最大对外连接数时,Azure Web 应用将会产生套接字异常.Azure Web 应用对于各个级别的实例,对 ...

  3. HDU 3377 Plan (插头DP,变形)

    题意:有一个n*m的矩阵,每个格子中有一个值(可能负值),要从左上角走到右下角,求路径的最大花费. 思路: 除了起点和终点外,其他的点可以走,也可以不走. (2)我用的是括号表示法,所以起始状态为') ...

  4. 遍历PspCidTable枚举进程

    //测试环境:win7 32位 1 // DriverEntry.cpp #include "ntddk.h" #include <ntddvol.h> #includ ...

  5. 简单明了理解Java移位运算符

    无须多言: @Test public void intro() { assertThat("应该相等", -1 >> 1, equalTo(-1)); assertTh ...

  6. leetcode_1052. Grumpy Bookstore Owner

    1052. Grumpy Bookstore Owner https://leetcode.com/problems/grumpy-bookstore-owner/ 题意:每个时刻i会有custome ...

  7. MIPS程序设计实例

    第一题:用系统功能调用实现简单输入输出 题目要求 利用系统功能调用从键盘输入,转换后在屏幕上显示,具体要求如下: 1.如果输入的是字母(A~Z,区分大小写)或数字(0~9),则将其转换成对应的英文单词 ...

  8. 基于KMeans的指数择时策略

    [导语]:聚类分析是指将物理或者抽象对象的结合分组为由类似对象组成的多个类的分析过程.简单来讲,聚类就是通过一些特征去自动识别一个大群体中的多个子群体,这些子群体中的对象彼此之间相似度高,而子群体之间 ...

  9. Perl 使用哈希的引用

    $ref = \%hash_clomnname_linevalue; $hash_of_whole_table{$table_name} = {%$ref};

  10. Cscope的使用(领略Vim + Cscope的强大魅力)

    文章出处:http://blog.csdn.net/dengxiayehu/article/details/6330200 Cscope的使用(领略Vim + Cscope的强大魅力) 1.Cscop ...