比赛详解
文章平均质量分 77
pigonered
吾有一言,名之曰......
展开
-
NOIP模拟试题2021/11/16
前言该死的概率期望,一看就会,一做就废。T1暴力注意此题不需要去重,不难发现行和列可以单独计算。用r[]和c[]表示每一行和每一列的宝藏数,宽度只有1的就解决了,那宽度不为1的呢?维护2个前缀和,宽度大小就是r[i]-r[j-1],暴力枚举前缀和后放到桶里。利用乘法原理统计即可。时间复杂度O(n^2+m^2+k)代码实现:#include<bits/stdc++.h>using namespace std;const int N=1e5+5,M=105;int n,m原创 2021-11-16 20:14:08 · 609 阅读 · 0 评论 -
NOIP模拟试题2021/11/15
前言居然说T1是签到题,直接不会,T2构造简单多了。太蒟蒻了。qwq被同桌吊打中。qwqT2容易想到一种美丽的构造方法。n=2时:0 11 0n=4时:1 1 0 10 0 0 11 0 0 01 0 1 1n=6时:1 1 0 1 0 10 0 0 1 0 11 1 0 0 0 00 0 0 0 1 11 0 1 0 0 01 0 1 0 1 1n=8时:1 1 0 1 0 1 0 10 0 0 1 0 1 0 11 1 0 0 0 0 0 00 0 0原创 2021-11-15 17:17:12 · 291 阅读 · 0 评论 -
NOIP模拟试题2021/11/11
T1对于要走到终点,如果无法直接走到,我们就要在环上绕,由于绕一个环可能会有多余的部分绕,对于一条能够到达终点的路径,途中遇到还不能走的边,我们就要去绕环,所以我们考虑找到每条能够到终点的路径的要解锁的边的最大值,并找到每个点的能绕的最小环的边数,计算即可。我想法是:先用tarjan算出每个点属于的强连通,然后再bfs在这个强连通里找它的最小的环,然后再dfs找路。不过WA了2个点。qwq蒟蒻代码实现:#include<bits/stdc++.h>using namespace s原创 2021-11-12 11:55:14 · 664 阅读 · 0 评论 -
NOIP模拟试题详讲2021/11/9
T1题目大意: 对于一个长度为n,1的个数有k的01串,求出有最多含有奇数个1的区间的数量,和任意一种满足的方案。找规律,本蒟蒻写了一个暴力发现:1.最大数量不受k的影响。2.最优解的方案肯定存在:前面放k-1个1,再在后面0的中间位置放一个1就可以了。下面给出我打出表:表示的是n时最大数。|1:1|2:2|3:4|4:6|5:9|6:12|7:16|8:20|9:25|10:30|11:36|12:42|13:49|14:56|15:64|16:72|观察发现,|2,4,6|6,9,12|1原创 2021-11-09 16:35:55 · 151 阅读 · 0 评论 -
NOIP模拟试题详讲2021/11/6
T1题目大意:对于一个序列,将其随机排序,求使之单调不下降的期望。答案对1e9+7取模。原创 2021-11-07 19:38:40 · 511 阅读 · 0 评论 -
NOIP模拟试题详讲2021/11/4
又是爆0的一天呢码风有点点变,可能以后都是这样了qwqT1题目大意:有2个序列A,B,可以使某区间加上一个数,每次修改询问min(max(a1,a2,a3...ap,bp+1...bn)∣0≤p≤n)min(max(a_1,a_2,a_3...a_p,b_{p+1}...b_n)|0 \leq p\leq n)min(max(a1,a2,a3...ap,bp+1...bn)∣0≤p≤n)。思路:我们发现:遍历的顺序是先走A,再走B。情况1:红色的代表[l,r][l,r][l,r]原创 2021-11-04 21:54:35 · 108 阅读 · 0 评论 -
NOIP试题详讲2021/11/2
T1题目描述数独是一个有趣的游戏。你需要在一个9×9 的矩阵中的每个格子中填入1 ~9 的数字,使得没有两个相同的数字填入同一行、同一列或同一个九宫格中。整个矩阵被划分为9 个九宫格,若两个格子同时在最左三列、最右三列或中间三列,且同时在最左三行、最右三行或中间三行,则这两个格子在同一九宫格中。如果两个相同的数同行、同列或同九宫格,则构成一对冲突。现在有一个数独的初始状态,出题人想对其进行一些修改和询问操作。需要注意:在操作时,初始状态中的数也可以被删除或者合并时被替换。向目前状态中原创 2021-11-02 16:57:02 · 496 阅读 · 0 评论 -
NOIP模拟试题详讲2021/10/30
好难啊!!!!!!!!!!!T1集合给定一棵n个点的树,给定正整数k , 在树上找出k 个不同的点,设为A1,A2…Ak,使得∑k−1i=1dis(Ai,Ai+1)最小,输出这个最小值。其中dis(x,y)表示树上x,y之间最短路的长度。可以发现,k个点在原来的树上是一个连通的子树。对于主要路径上的边,权值只算一次,而其他额外的边,权值要乘上2。这里我们考虑使用树形DP。 虽然我考虑不到……我们可以原来的树拆成很多的子树,更新这些子树合并后的权值的状态。定义:size[x]表示以x为根的子原创 2021-11-01 10:47:09 · 216 阅读 · 0 评论 -
CSP-S2021试题T1廊桥分配详讲
来迟了来迟了,忘写了。我们来看看这道卡了本蒟蒻3个小时的题。传送门luoguP7913廊桥分配题目大意:分为了国内和国外两部分,飞机来了要么停廊桥要么走,有空位一定停,且停最小的,要如何分配廊桥才能使停的飞机数最大。首先我们要知道一个事实:对于n架飞机,有无数个廊桥,其中的一架飞机k,能够停在廊桥的要求是总的廊桥数大于等于从第一架来的飞机到它飞来时使它能停到廊桥的廊桥数。换而言之,对于某一架飞机,使它能停靠的廊桥数与有多少个廊桥无关。至于为什么,我们可以思考:尽管有无数个廊桥,但是飞机是严原创 2021-10-27 11:40:12 · 1418 阅读 · 2 评论 -
2.NOIP模拟赛试题详讲
A题目描述:数轴上有n个棋子, 第i 个棋子初始在ai.你会不断对棋子进行操作, 每次操作是选择一个棋子, 假设它的坐标是x, 则可以把它移动到x−1或x−2, 但要求移动后的位置原先没有棋子.如果一个棋子的坐标变得小于等于0, 则称它挂掉了. 你需要求出有多少个排列p使得存在一种方案使得第i 个挂掉的棋子是pi. 答案对109+ 7取模.解析1.假如两个棋子位于101,103,和两个棋子位于1,3是没有区别的,可以101先挂掉,也可以以103先挂掉。2.假如位于2,3,4,那么2,3就会堵住4,所原创 2021-10-17 20:00:36 · 334 阅读 · 0 评论 -
1.NOIP模拟赛试题详讲
A题目描述: 给一个 n 个节点 m 条边的无向图, 有 k 轮操作, 每轮操作是选择尽量多的边删除, 如果有多种方案, 那么选择边权和最大的那个, 但是要求删除的边中不存在环.对于每条边, 输出它在第几次操作被删除, 如果这条边最后都没有被删除那么输出 0.先画个图来看看想法红色的为这一轮所选删除的边黄色为第2轮所删除的边。最后剩了边权为1的这条边。我们再观察一下,每次删除的就是一棵树,因为树上再加一条边就是环了,所以其实就是每次找最大生成树。那应该怎么找呢?本蒟蒻只搞出了暴力枚举每轮原创 2021-10-17 16:25:24 · 217 阅读 · 0 评论