前言 \(2021\) 年 \(9\) 月 \(1\) 日起,全新的 NOI Linux 2 正式替代了旧版 NOI Linux,成为 NOI 系列赛的官方比赛环境。 免责声明 本文信息来源于 NOI 官网公布的正在实施的技术规范,一些选手的实践经验,向 NOI 技术委员会询问得到的回复等,并进行了一定整理和加工,以供各位参赛选手
link STRATEGY: 求关于区间的不重复元素数的基本思路:用线段树维护 F(i,r) 那么这一提就很简单了。把原题中的式子看成对于每一个枚举的右端点r,\(\sum_{i\le r}f(i,r)\)造一棵线段树,维护一个数组\(g[i\in [1,n]]\) 表示i到当前右端点r的f(i,r)。考虑每次移动右端点造成的影响。 显
NOI 2020 D1T2 Destiny Task 给定 \(n\) 个点的以 \(1\) 为根的有根树,有 \(m\) 条约束,每条约束包含一个点对 \((u,v)\),满足 \(u\) 是 \(v\) 的祖先,你需要给每条边染成黑白两种颜色,满足对于每条约束,\(u\rightarrow v\) 的路径上都有一条黑边,求合法方案数。 答案对 \(998244353\) 取
我们发现其实恰好并不太好做。 我们可以考虑大力容斥。 这个类型就很像二项式反演的做法 我们设\(f(i)\)表示钦定\(i\)回合分出平局,其他位置不管的方案数,\(g(i)\)表示恰好有\(i\)回合分出平局的方案数。 那么就有\(f(n) = \sum_{i = n}^m\binom{i}{n}g(i)\) 二项式反演一手则有 \(
noi题库1016. 计算天数 题目描述 输入年份与月份,求该月共有多少天。 输入 输入两个空格隔开的正整数year和month,分别表示年份和月份 输出 输出对应year这一年month这个月的天数。 样例输入 2000 2 样例输入 29 #include <iostream> using namespace std; main(){
noi题库1013. 识别三角形 题目描述 输入三个正整数,判断能否构成三角形的三边,如果不能,输出“NO”。如果能构成三角形,判断构成什么三角形?按等边、直角、一般三角形分类,依次输出对应的三角形类型“Equilateral”、“Right”、“General”。 输入 输入一行三个用空格隔开
noi题库1011. 正方形 题目描述 有一个正方形,四个角的坐标分别是(1,-1),(1,1),(-1,-1),(-1,1)。写一个程序,判断一个给定的点(x,y)是否在这个正方形内(包括正方形边界),如果在正方形内输出“Yes”,否则输出“No”。 输入 一行两个空格隔开的实数x,y,表示点的坐标。 输出 如果点(x,y)在正方形内
描述 给定一个长度为n的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。 输入 一共2行,第一行为序列的个数n(1 <= n <= 1000),第二行为序列的n个不超过1000的非负整数,整数之间以一个空格分隔。 输出 输出一行,表示序列的最大跨度值。 这题的思路和上题基本一致(1
【算法代码】 /* 设输入样例数据存在文件test.in中,输出样例数据存在文件test.out中, 则在CSP、NOI等比赛的代码中,需添加freopen、fclose语句, 内容详见模板代码如下。 */ #include <bits/stdc++.h> using namespace std; int main(){ freopen("test.in","r",stdin); freopen(
正题 题目链接:https://www.luogu.com.cn/problem/P7470 题目大意 给出\(n\)个二元组\((a,b)\)。 \(q\)次询问给出\((l,r,c,d)\)表示询问\([l,r]\)中有多少二元组满足\(c\ xor\ a\leq min(b,d)\)。 \(1\leq n,q\leq 10^5\) 解题思路 这个\(min\)一看就很迷,显然是让我们分两种情
\(\mathcal{Description}\) Link. 自己去读题面叭~ \(\mathcal{Solution}\) 首先,参悟【样例解释 #2】。一种暴力的思路即为钦定集合 \(S\) 内的位置都合法,容斥计数。其中对于每条纸带的每个位置,有三种情况(令 _ 为“保持不变”,注意没有被机器人经过的位置都有这种修改):
题目描述 Black Box是一种原始的数据库。它可以储存一个整数数组,还有一个特别的变量i。最开始的时候Black Box是空的.而i等于0。这个Black Box要处理一串命令。 命令只有两种: ADD(x):把x元素放进BlackBox; GET:i加1,然后输出Blackhox中第i小的数。 记住:第i小的数,就是Black Box里的数
NOI Linux 2.0发布 VirtualBox 对于新版的NOI-Linux来说,1. 机房管理,如何能够创造出最符合省级测试平台?2. 虚拟机的性能和NOI官方评测平台的性能差距如何在赛场中把握?3. 如何在Virtualbox环境下 创建NOI-Linux 和windows10 的共享文件夹4. 如何实现一个远程命令启动所有机器
这篇就主要说一下个人感悟吧,虽然不是金牌选手,但还是希望多多少少能对后来者提供些帮助 1. 预备 省选到 NOI 的准备,就当讲讲故事。 省选考下来好像不是很行,本来退役记都写了一半了,结果发现省队最后一名苟进去了 awa 随后就是抛开一切准备 NOI。省选联考固然难,但做过 NOI2020 的线
前言 为什么叫颓废记了呢,因为我很颓废 感觉可以叫划水记,毕竟有台花 Day -inf 省选挂了80分,成为了GD-02 但不挂分还是要被pb吊打,想想不亏 Day -inf~Day -2 打了不少模拟赛,成功入选了Dengls的NOI六君子 UOJ笔试奇妙操作导致0分,后两天分数210+205,被学长mls的题制裁了,感觉做qy的
提供一种和不太一样的树剖解法(一下考场就会做了qwq),尽量详细讲解。 思路 设重边为黑色,轻边为白色。 首先,先将边的染色转化为点的染色(即将 \(u\) 节点连向父节点的边的颜色转化为 \(u\) 节点的颜色)。 对于操作一,如果要把涉及到的点全部染色,显然是不现实的。设染成颜色 \(1\) 的路径
Day 2459419 报到日,可以感受到天气略受台风影响。上午报到,下午看了会板子、划了会水,晚上看了一会开 墓 幕式。 Day 2459420 上午在背笔试,去领了雨衣。下午 2:30 开始试机(实际略有推迟),试机题是 NOI 2020 的题,不过自己实际在写自己想的另一题。3:00 开始笔试,六分钟做完后检查了几遍,
题意简述 给定一个 \(n\) 的点 \(m\) 条边的带权有向图,你可以进行至多 \(k\) 次操作,使得下一次通过路径的权值变为其相反数,之后再变回来。 问从 \(1\) 号点到 \(n\) 号点的最短路。 \(n≤100,m≤2500,k≤10^6\)。 Solution 先考虑 \(70\) 分怎么做: \(k=0\) 时直接跑个 \(floyd\)
NOI2021游记 大概情况 本人省份 : 河北 本人学校 : 石家庄石门实验 比赛地 :浙江余姚的梦麟中学 其它 : 今年新高一,第一次参加 \(NOI\) ,同行的有 \(5\) 个学长, \(4\) 个教练。 前言 第一次参加 \(NOI\),成绩挺令我满意的。至少把定好的目标实现了。 其实本来这次是抱着旅游的想法去
简要题意: 给定两个字符串 \(A,B\) 求出 \(B\) 的本质不同子串中是 \(A\) 的子序列的个数 首先考虑将 子串 转化为后缀的前缀,我们可以枚举整个后缀来获取整个 \(B\) 的 子串。 枚举后缀是 \(O(n)\) 的,再用整个后缀去与 \(A\) 匹配。 不妨设这个后缀为 \(S_{1-i}\) 因为 \(S_{1-i}\)
谨以此篇献给我即将消逝的 OI 生涯 Day -3 已经要到了最终决战的时候呢。 可是我仍然没有准备好。 还能做什么呢? 我较之前有变强吗?变强了多少?这足够吗? 或许我最好的情况也就是 Ag 滚了吧,没准 Cu 也有可能,比赛发挥时上时下,希望 NOI 发挥能好些吧。 话说回来,谁还没有个 Au 的梦呢?
7.20 ZROI-Day7模拟赛 赛时历程 精神状态还好,T1一上来前两个sub非常顺畅(不顺畅就有鬼了),第三个sub稍微想了会儿,三个打完已经九点快半。然后考虑第4个sub,可能是什么神奇的随机化,也想到二进制分组或者分治之类的,但是想来都很复杂,于是先去看T2,一看到LCP,心想完了完了,字符串没学好的我
题目描述 用数字1,2,3,4,...,n*n这n2个数蛇形填充规模为n*n的方阵。 蛇形填充方法为: 对于每一条左下-右上的斜线,从左上到右下依次编号1,2,...,2n-1;按编号从小到大的顺序,将数字从小到大填入各条斜线,其中编号为奇数的从左下向右上填写,编号为偶数的从右上到左下填写。 比如n=4时,方
学校为期 10 天的培训终于结束了,终于可以回家颓废写题了 这几天我似乎什么也没有干,无非就是写写暑假作业,再写写题 然而最近卡在了 https://www.luogu.com.cn/problem/P4149 上,怎么都过不去 于是就开心无奈地颓了好久,看了好多 NOI 的游记,还有 wmd 学长的博客 不禁有了一些感想 我
一、题目: 洛谷原题 二、思路: 这道题是一道蓝题,我都没想出来