Skip to content

泉州一中信息学Blog

信息学奥赛技术分享博客

  • 登录
  • 小学oj
  • 中学oj
  • 测试页面1
  • Toggle search form

2025暑假中山集训Day7——8.01

Posted on 2025年8月1日2025年8月4日 By 郑, 铭轩 2025暑假中山集训Day7——8.01无评论

早上7:30,我们来到了这与我们泉州第一中学有长达2个汉字的最长公共子序列的中山纪念中学。

上午

打比赛—-2025.08.01【提高B组】模拟赛

又少了80分

传送门
T1
题目描述
 Winter is coming.
  Robert 是个昏庸的君主,整日沉迷于吃喝玩乐,终于,当寒冬
降临,他不得不组织军队来对抗敌人。
  尽管如此,他仍然是个喜欢玩耍的人,还有点强迫症,他希望选出
的军队的所有人的身高的方差最小,并且选出的人数x要满足 L<=x
<=R,因为太少了他怕不够气势,太多了他怕会控制不当。
  现在给出 n 个士兵的高度,L 和 R,Robert 找到聪明的你,
希望你帮他解决这个难题。

输入
 第一行三个整数,依次是 n, L, R
  第二行 n 个正整数,表示每个士兵的高度 h

输出
 一行,表示最小的方差,保留三位小数即可。

赛时思路:

由计算平均数和方差公式可得 \bar{x} = \frac{\sum\limits_{i=1}\limits^{n}{a_{i}}}{n},s^2=\frac{\sum\limits_{i=1}\limits^{n}{(a_{i}-\bar{x})^2}}{n}

在将 \bar{x} 带入可得 s^2=\frac{\sum\limits_{i=1}\limits^{n}{(a_{i}-\frac{\sum\limits_{j=1}\limits^{n}{a_{j}}}{n})^2}}{n}

化简 \begin{aligned} \frac{\sum\limits_{i=1}\limits^{n}{(a_{i}-\frac{\sum\limits_{j=1}\limits^{n}{a_{j}}}{n})^2}}{n} &= \frac{\sum\limits_{i=1}\limits^{n}{(\frac{na_{i}-\sum\limits_{j=1}\limits^{n}{a_{j}}}{n})^2}}{n} \\ &= \frac{\sum\limits_{i=1}\limits^{n}{\frac{(na_{i})^2-2na_{i}\sum\limits_{j=1}\limits^{n}{a_{j}}+(\sum\limits_{j=1}\limits^{n}{a_{j}})^2}{n^2}}}{n} \\ &= \frac{\sum\limits_{i=1}\limits^{n}{((na_{i})^2-2na_{i}\sum\limits_{j=1}\limits^{n}{a_{j}}+(\sum\limits_{j=1}\limits^{n}{a_{j}})^2)}}{n^3} \\ &= \frac{\sum\limits_{i=1}\limits^{n}{n^2a_{i}^2}-\sum\limits_{i=1}\limits^{n}{2na_{i}\sum\limits_{j=1}\limits^{n}{a_{j}}}+\sum\limits_{i=1}\limits^{n}{(\sum\limits_{j=1}\limits^{n}{a_{j}})^2}}{n^3} \\ &= \frac{n^2\sum\limits_{i=1}\limits^{n}{a_{i}^2}-2n\sum\limits_{i=1}\limits^{n}{a_{i}\sum\limits_{j=1}\limits^{n}{a_{j}}}+n(\sum\limits_{j=1}\limits^{n}{a_{j}})^2}{n^3} \\ &= \frac{n^2\sum\limits_{i=1}\limits^{n}{a_{i}^2}-2n(\sum\limits_{i=1}\limits^{n}{a_{i}})^2+n(\sum\limits_{j=1}\limits^{n}{a_{j}})^2}{n^3} \\ &= \frac{n\sum\limits_{i=1}\limits^{n}{a_{i}^2}-(\sum\limits_{i=1}\limits^{n}{a_{i}})^2}{n^2} \end{aligned}

可以发现 \sum\limits_{i=1}\limits^{n}{a_{i}^2} 和 \sum\limits_{i=1}\limits^{n}{a_{i}} 可以用前缀和优化,所以可以 O(1) 算出任意一个序列的方差

再暴力枚举开头为 i ,长度为 l \sim r 的字符串,计算方差,输出最小值即可

时间复杂度 O(n^2)

赛时代码:

标程思路:

可以发现,任意一个序列,它加上一个新元素不会使得其方差更优。

所以,序列的长度只能是 l,从 1 到 n-l+1 枚举一遍即可

时间复杂度 O(n)

标程代码:

T2
题目描述
 Ned 再也看不下去 Robert 的种种恶习,于是他决定出一道题
来让他醒悟。
 Ned 的题目是这样:
 给出一个有 n 个数的序列,求其中所有连续子序列的数的最大
公因数的乘积模 1000000009 的值。
 Robert 当时就立刻给出了一个超级无敌速度无人能及的O(1)错
误解法。
 既然 Robert 不会做,Ned 决定让你来做出这题来证明Robert
不应颓废下去。

输入
 第一行一个正整数 n(1≤n≤50000)
 第二行 n 个正整数 a [i](1≤a [i]≤10000000)

输出
 一行一个整数表示序列中所有连续子序列的数的最大公因数的
乘积模 1000000009 的值

赛时思路:

n^2 暴力枚举

赛时代码:

标程思路:

首先列出数学式子:ans=\prod\limits_{i=1}\limits^{n}{\prod\limits_{i=1}\limits^{n}{gcd(a_i,a_{i+1},\dots,a_{j-1},a_j)}}

们来看一下 gcd 的本质,举个例子,有两个数,一个是12,一个是18,那么他们的 gcd 是 6,那么 6 是怎么得到的呢?

\begin{aligned}12 &= 2^2 \times 3^1,\quad 18 = 2^1 \times 3^2 \\ \gcd(12, 18) &= 2^{\min(2, 1)} \times 3^{\min(1, 2)} \\ &= 2^1 \times 3^1 = 6 \end{aligned}

所以某个质数 p 对答案的贡献跟一个子序列里这个质数的次数的最小值有关,即 p^{min(a_i)},观察到最终求的是 gcd 的乘积,所以,我们可以现将所有数分解质因数,然后对于一个质数对某个区间的答案的贡献,其实就是这个区间内这个质数的次数的最小值,所以我们可以用笛卡尔树加上快速幂来解决,时间复杂度 O(8n \log n) (注,有常数 8 是因为每个小于 10^7 数最多可以被分成八个不同的质因数)

标程代码:

T3
题目描述
 YYC最近在和旅店老板的对战中被虐惨了,关键时刻,他打出了
“生命之树”为自己续秒。
 生命之树是一张有 n 个节点的无向无环图,其中1号节点为根.
每个节点上有一个由小写字母组成的符咒 S_i和一个权值val_i,
但只有两个不同的符咒组合起来才会为他续秒,而两个符咒的收益
(能够续的秒数)w(S_i, S_j) 正是这两个字符串的最长公共前
缀的长度。
 定义 dec_u 为 u 的后代集合(特别地,u \in dec_u),那
么以 u 为根的子树的总收益为:ans_u = \sum_{\substack{i
\in dec_u \\ j \in dec_u \\ i < j}} (val_i \text{xor
} val_j) \times w(S_i, S_j)
 其中 xor 代表异或运算。
 由于使用生命之树的花费是巨大的,YYC决定只使用生命之树的
某个子树。他需要知道对于每个节点 u,以 u 为根的子树的总收
益是多少。

输入
 第一行一个整数 n,表示点数。
 接下来1行,n 个整数表示 val_i。
 接下来 n 行,每行一个字符串表示 S_i。
 接下来 n - 1 行,每行两个整数 u, v,表示 u, v 之间有
一条边。

输出
 输出 n 行,每行一个整数表示 ans_i。

赛时思路:

暴力

赛时代码:

没时间,不放了

标程思路:

标程代码:

没打,就不放了
T4
题目描述
 第一天的第一题,一般都是一道送分的大水题,这次也不例外.
 给定 n 个 m 维向量,每一维的取值只能是 1 或 2 或 3 或
4。接下来有 q 个询问,每个询问都是这四种询问中的一种:
 (1)给定一个向量 C,问有多少种方法从这 n 个向量中选出
2 个向量 A 和 B,使得对于每一维 i(1 ≤i ≤ m),A i和B i
的最大值小于等于 C i 。
 (2)给定一个向量 C,问有多少种方法从这 n 个向量中选出
2 个向量 A 和 B,使得对于每一维 i(1 ≤i ≤ m),A i和B i
的最小值大于等于 C i 。
 (3)给定一个向量 C,问有多少种方法从这 n 个向量中选出
2 个向量 A 和 B,使得对于每一维 i(1 ≤i ≤ m),A i和 B i
的最大值大于等于 C i 。
 (4)给定一个向量 C,问有多少种方法从这 n 个向量中选出
2 个向量 A 和 B,使得对于每一维 i(1 ≤i ≤ m),A i 和B i
的最小值小于等于 C i 。
 其中,C 也是一个 m 维向量,并且每一维的取值也只能是 1
或 2 或 3 或 4。A i 表示向量 A 的第 i 维的值,B i和C i
同理。
 为了更加准确地说明“多少种方法”的含义,我们规定:令第i次
读入的向量为第 i 个向量,那么一种方法就对应一个集合 {i,j}
(i 不等于 j),两种方法不是同一种方法,当且仅当它们对应
的集合 {i,j} 不相同。

输入
 第一行两个整数 n 和 m,表示接下来会有 n 个 m 维向量。
 接下来 n 行,每行一个长度为 m 的字符串,每个字符串表示
一个向量,第 i 个字符表示第 i 维的值。
 接下来一行是一个整数 q,表示询问的个数。
 接下来 q 行,每行一个询问,包含一个整数 t 和一个字符串,
其中 t 表示是哪一种询问,字符串表示给定的向量 C。

输出
 输出共有 q 行。对于每个询问,输出一行,包含一个整数,表
示方案数。

赛时思路:

暴力

赛时代码:

没时间,不放了

标程思路:

标程代码:

没打,就不放了

下午

改题目

晚上

打博客

训练日志

文章导航

Previous Post: 中山纪念中学 Day7
Next Post: 中山day7

发表回复 取消回复

要发表评论,您必须先登录。

2025年 12月
一 二 三 四 五 六 日
1234567
891011121314
15161718192021
22232425262728
293031  
« 8月    

2024常州 Class Classic OI Problems Contest cqr的长乐集训2023 CZYZ LOC New Game NOI NOIP Password Protected PM_PK Preview Problems Retrospect Selfmade Qusetion STL The end Training Uneasy Problem 蒟蒻 通报

  • 训练日志
  • 链表
  • 入门
  • 模拟
  • dfs序
  • 并查集
  • spfa
  • 最小割
  • 矩阵树定理
  • 仙人掌
  • BSGS
  • 凸包
  • 回文自动机
  • 递推与动归
  • 堆
  • 莫队算法
  • ST表
  • Treap
  • 树套树
  • 可持久化线段树
  • 初赛
  • 搜索
  • 贪心
  • 深度优先搜索
  • 欧拉图
  • dijkstra
  • 费用流
  • 哈夫曼树
  • kruskual
  • 置换
  • 旋转卡壳
  • KMP
  • 区间动归
  • STL
  • 链表
  • 可并堆
  • sply
  • 主席树
  • 可持久化字典树
  • 算法
  • 动态规划
  • 构造
  • 广度优先搜索
  • 最短路
  • floyd
  • 最大流
  • 虚树
  • prim
  • 筛法
  • 半平面交
  • 字典树
  • 背包动归
  • 基础数据结构
  • 分块
  • 线段树
  • 替罪羊树
  • K-DTree
  • 图论
  • 二分法
  • 迭代搜索
  • 拓扑排序
  • 有上下界网络流
  • 生成树
  • 快速幂
  • 后缀数组
  • 树形动归
  • 哈希表
  • 中级数据结构
  • 平衡树
  • 可持久化数据结构
  • 数据结构
  • 三分法
  • 启发式搜索
  • 图的连通
  • 点分治
  • 博弈论
  • AC自动机
  • 状压动归
  • 单调栈
  • 树状数组
  • 高级数据结构
  • OI资料
  • 数学
  • 高精度
  • 差分约束
  • 树上倍增
  • 素数测试
  • 后缀自动机
  • 数位动归
  • 单调队列
  • 新闻
  • 几何
  • 随机化
  • 二分图染色
  • 树链剖分
  • 欧拉函数
  • manacher
  • 斜率优化
  • 离线处理
  • 信息学奥赛学长风采
  • 字符串
  • 二分图匹配
  • prufer编码
  • 卡特兰数
  • 密码学
  • 决策单调
  • 赛后总结
  • 其他
  • 2-SAT
  • 最近公共祖先
  • 矩阵乘法
  • 记忆化搜索
  • 网络流
  • Link cut tree
  • 排列组合
  • 树
  • 高斯消元
  • 乘法逆元
  • 容斥原理
  • 调和级数
  • 概率与期望
  • 模线性方程组
  • 莫比乌斯反演
  • 快速傅里叶变换
  • 扩展欧几里德
  • 最大公约数与最小公倍数

近期文章

  • 中山纪念中学 Day21
  • 中山集训8.15 LAST DAY+集训小结
  • GDNOJ – DAY 18
  • 中山8.14
  • 2025暑假中山集训Day20——8.14

近期评论

归档

  • 2025年8月
  • 2025年7月
  • 2025年2月
  • 2025年1月
  • 2024年11月
  • 2024年10月
  • 2024年9月
  • 2024年8月
  • 2024年7月
  • 2024年3月
  • 2024年2月
  • 2024年1月
  • 2023年12月
  • 2023年11月
  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月

Copyright © 2025 泉州一中信息学Blog.

Powered by PressBook WordPress theme