随笔分类 - OI-做题笔记
摘要:题面 约翰的 \(n\) 头奶牛每年都会参加“哞哞大会”。 哞哞大会是奶牛界的盛事。集会上的活动很多,比如堆干草,跨栅栏,摸牛仔的屁股等等。 它们参加活动时会聚在一起,第 \(i\) 头奶牛的坐标为 \(x_i\),没有两头奶牛的坐标是相同的。 奶牛们的叫声很大,第 \(i\) 头和第 \(j\)
阅读全文
摘要:题面 JOIOJI桑是JOI君的叔叔。“JOIOJI”这个名字是由“J、O、I”三个字母各两个构成的。 最近,JOIOJI桑有了一个孩子。JOIOJI桑想让自己孩子的名字和自己一样由“J、O、I”三个字母构成,并且想让“J、O、I”三个字母的出现次数恰好相同 。 JOIOJI桑家有一份祖传的卷轴,上
阅读全文
摘要:题目描述 给你 \(N\) 个点的无向图 ( \(1 \le N \le 15,000\) ),记为:\(1…N\)。 图中有 \(M\) 条边 ( \(1 \le M \le 30,000\) ) ,第 \(j\) 条边的长度为: \(d_j ( 1 \le d_j \le 1,000,000,0
阅读全文
摘要:题面 萧薰儿是古国的公主,平时的一大爱好是采花。 今天天气晴朗,阳光明媚,公主清晨便去了皇宫中新建的花园采花。 花园足够大,容纳了 \(n\) 朵花,共有 \(c\) 种颜色,用整数 \(1 \sim c\) 表示。且花是排成一排的,以便于公主采花。公主每次采花后会统计采到的花的颜色数,颜色数越多她
阅读全文
摘要:题面 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足。 考虑一个约束满足问题的简化版本:假设 \(x_1,x_2,x_3,\cdots\) 代表程序中出现的变量,给定 \(n\) 个形如 \(x_i=x_j\) 或 \(x_i\neq x_j\) 的变量相等/不等的约束条件,请
阅读全文
摘要:题面 给出两个长度相同的的只含大写字母的字符串 \(a, b\),每次可以交换 \(a\) 中相邻两个字符,求最少的交换次数,使得 \(a\) 交换后的得到的字符串与 \(b\) 相同。 思路 建议先完成这两道题: P1908 逆序对 P1966 [NOIP2013 提高组] 火柴排队 交换相邻的字
阅读全文
摘要:题面 个人Hydro域链接 团队洛谷题目链接 1946 年 3 月 5 日,英国前首相温斯顿·丘吉尔在美国富尔顿发表“铁幕演说”,正式拉开了冷战序幕。 美国和苏联同为世界上的“超级大国”,为了争夺世界霸权,两国及其盟国展开了数十年的斗争。在这段时期,虽然分歧和冲突严重,但双方都尽力避免世界范围的大规
阅读全文
摘要:题面 给定长度为 \(2 \times N\) 的序列,\(1\sim N\) 各处现过 \(2\) 次,\(i\) 第一次出现位置记为 \(a_i\),第二次记为 \(b_i\),求满足 \(a_i<a_j<b_i<b_j\) 的对数 思路 1.暴力 没什么好讲的。时间复杂度为 \(O(n^2)\
阅读全文
摘要:题面 在 2016 年,佳媛姐姐刚刚学习了树,非常开心。现在他想解决这样一个问题:给定一颗有根树,根为 \(1\) ,有以下两种操作: 标记操作:对某个结点打上标记。(在最开始,只有结点 \(1\) 有标记,其他结点均无标记,而且对于某个结点,可以打多次标记。) 询问操作:询问某个结点最近的一个打了
阅读全文
摘要:题面 SERKOI 最新推出了一种叫做 “免费馅饼” 的游戏:游戏在一个舞台上进行。舞台的宽度为 \(w\) 格(从左到右依次用 \(1\sim w\) 编号),游戏者占一格。开始时游戏者可以站在舞台的任意位置,手里拿着一个托盘。下图为天幕的高度为 \(4\) 格时某一个时刻游戏者接馅饼的情景。 游
阅读全文
摘要:题面 小明对数学饱有兴趣,并且是个勤奋好学的学生,总是在课后留在教室向老师请教一些问题。一天他早晨骑车去上课,路上见到一个老伯正在修剪花花草草,顿时想到了一个有关修剪花卉的问题。于是当日课后,小明就向老师提出了这个问题: 一株奇怪的花卉,上面共连有 \(N\) 朵花,共有 \(N-1\) 条枝干将花
阅读全文
摘要:简单题。 其实就是$Stirling(N,M)$,可以用 \(Dymanic\ Planning\) 求解。 状态转移方程为 $ Stirling(i,j)=Stirling(i-1,j-1)+j\times Stirling(i-1,j) $ 至于高精度,可以用Python s= [[0] * 4
阅读全文
摘要:题面 Bessie喜欢在手机上下游戏玩(……),然而她蹄子太大,很难在小小的手机屏幕上面操作。 她被她最近玩的一款游戏迷住了,游戏一开始有n个正整数,(2<=n<=262144),范围在1-40。在一步中,贝西可以选相邻的两个相同的数,然后合并成一个比原来的大一的数(例如两个7合并成一个8),目标是
阅读全文
摘要:#题目传送门 分析 本题其实可以拆解程两个问题,求区间最大值、求区间最小值。 而这两个操作都必须在 \(O(\log n)\) 内完成。 自然想到线段树。 细节问题 线段树需要维护两个信息:区间最大值、区间最小值。 输入完数据后,建树。然后遍历序列,求区间最大值最小值之差,再判断是否大于 \(c\)
阅读全文
摘要:题面 \(n\) 位同学站成一排,音乐老师要请其中的 \(n-k\) 位同学出列,使得剩下的 \(k\) 位同学排成合唱队形。 合唱队形是指这样的一种队形:设 \(k\) 位同学从左到右依次编号为 \(1,2,\) … \(,k\),他们的身高分别为 \(t_1,t_2,\) … \(,t_k\),
阅读全文
摘要:题面 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过 \(n\) 元钱就行”。今天一早,金明就开始做预算了,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表
阅读全文
摘要:题目 如题,给出一个 \(N\) 次函数,保证在范围 \([l, r]\) 内存在一点 \(x\),使得 \([l, x]\) 上单调增,\([x, r]\) 上单调减。试求出 \(x\) 的值。 思路 本题可以用导数做,(逃 首先,一个 \(N\) 次函数无非就是 一个这样的函数: \(f(x)=
阅读全文
摘要:分析 这道题我想到了一个做法。 维护两个和 \(s_1,s_2\),当输入的字符 \(rarity_i\) 不为 N 且 \(card\_name_i\) 中含有 Alicia,就将 \(s_1\) 加上 \(rate_i\)。 \(s_2\) 直接维护所有 \(rate_i\) 的和即可。 最后只
阅读全文
摘要:题目传送门 暴力做法 暴力,可得58分。吸氧可得92分。(总之不能A) #include <bits/stdc++.h> using namespace std; int n; int h[100005]; int main(){ ios::sync_with_stdio(false);cin.ti
阅读全文
摘要:简要题意 对于一个序列 \(a\) 的元素 \(a_i\),存在一个操作 \(\text{reduce}\)。可以把元素 \(a_i\) 与 \(a_{i-1}\) 压缩成 \(\max \{ a_i,a_{i-1}\}\),该操作的代价是 \(\max \{ a_i,a_{i-1}\}\),求把这
阅读全文