随笔分类 -  模拟赛

09-03 题解
摘要:09-03 题解 比赛地址 补题地址 这回打算改变一下方式, 从写 "怎么做题" 变成 "怎么想题" T1 什么样的两个 \(a_i\) 能被合并到一个 Bug 上? 很简单 (不过我也想了好一会), mod 2 同余的两个可以合并在一起 为了培养最强 Bug, 肯定不能往上叠负数, 所以上述内容针 阅读全文
posted @ 2024-09-03 21:19 Bubble_e 阅读(14) 评论(0) 推荐(0)
08-09 题解
摘要:08-09 题解 A 小水题 思路 假设我们选定了当前子序列的绝对众数 \(x\), 那么该序列里最多再放 \(num_x - 1\) 个其他数字 为了分出最少的子序列, 肯定要让每个子序列在拥有绝对众数的同时能消化尽量多的其他数字 由此, 可以得到一个贪心策略: 每次取出出现次数最多的一个数字, 阅读全文
posted @ 2024-08-10 10:16 Bubble_e 阅读(29) 评论(0) 推荐(0)
08-04 题解
摘要:08-03 题解 A 根据题目的提示, 发现所有数的积是不变的 (\(gcd(a, b) * lcm(a, b) = a * b\)), 所以差大和大 简易证明 设 \(g = gcd(a, b)\), 则 \(a = a'g,\) \(b = b'g\), \(lcm(a, b) = a'b'g\ 阅读全文
posted @ 2024-08-06 14:48 Bubble_e 阅读(22) 评论(0) 推荐(0)
08-02 题解
摘要:layout: post title: "08-02 题解" date: 2024-08-02 tags: [模拟赛] comments: true author: wangyangjena <head> <script src="https://cdn.mathjax.org/mathjax/la 阅读全文
posted @ 2024-08-06 14:47 Bubble_e 阅读(23) 评论(0) 推荐(0)
07-31 题解
摘要:07-31 题解 A 首先, 如果 \(k \ge m\) , 答案为 \(m\) , 因为每变换一次, 前缀中多一个 1 想法 \(k\) 非常的大, 不可能计算出最终状态 但是 \(m\) 非常小, 如果有一种 \(O(答案)\) 的做法就好了 (类似 NOI 2024 D2T1 的部分分做法) 阅读全文
posted @ 2024-08-01 07:43 Bubble_e 阅读(39) 评论(0) 推荐(0)
07-30 题解
摘要:07-30 题解 A 朴素的想法 $ dp(i, j, k) $ 表示考虑到第 \(i\) 位, 前 \(i\) 位的和为 \(j\), 第 \(i\) 位的值为 \(k\) 然后咋转移? 重新定义移动小球的方式: 从自己右边的邻居拿过来正数个球 拿过来负数个球(即往右边的邻居放正数个球) 在第 2 阅读全文
posted @ 2024-07-30 21:22 Bubble_e 阅读(19) 评论(0) 推荐(0)
07-25 题解
摘要:07-25 题解 原题出处(按顺序): CF1556E CF1234F P9746 CF1316E P3651 CF17C CF1842H A 转化: 括号序列 如果 \(a_i\ > b_i\) , 则有 \(a_i - b_i\) 个左括号 如果 \(a_i\ < b_i\) , 则有 \(b_ 阅读全文
posted @ 2024-07-27 20:32 Bubble_e 阅读(20) 评论(0) 推荐(0)
07-19 题解
摘要:07-19 题解 B 思路 实质 : 有一个完全图, 删掉一些边, 然后在图上找一棵生成树 但是图的边数是 \(n^2\) 级别的, 极其稠密 找生成树的步骤:从一个点开始, 把与它相连的, 不在同一连通块的点连在一起 所以我们只要确保每次都能在尽量少的步数内找到一个合法点 一共有 n 个点, 确定 阅读全文
posted @ 2024-07-19 20:39 Bubble_e 阅读(26) 评论(0) 推荐(0)
11-03 模拟赛Day2
摘要:decimal 直接模拟笔算除法即可 $ n % m $ 的前 $ l - 1 $ 位的余数可以 $ O(1) $ 求出来,为 $ n \times 10 ^ {l - 1} % m $ 这里的‘余数’是将余数乘以 $ 10 ^ {l - 1} $ 后化为的正整数 $ R - L \le 10 ^ 阅读全文
posted @ 2023-11-03 21:38 Bubble_e 阅读(25) 评论(0) 推荐(0)
Contest 23-04-18
摘要:#D.糖果镇 思路 $m=3$时整个路径有两个拐点,分别是$m=1 \to m=2,m=2 \to m=3$ 设拐点$1$在第$i$列,拐点$2$在第$j$列,则路径上的数字总和为$(front[1][i])+(front[2][j]-front[2][i-1])+(back[j])$($front 阅读全文
posted @ 2023-04-18 22:46 Bubble_e 阅读(60) 评论(0) 推荐(0)
Contest 23-04-13
摘要:#A. 最大子段和 最大子段和(正常) for(int i=1;i<=n;i++) sum[i]=max(sum[i-1]+in[i],in[i]); $sum[i]$表示以第i个数为结尾的最大子段和,可以由前一个最大子段和转移过来$(sum[i-1]+in[i])$,也可以只包含自己$(in[i] 阅读全文
posted @ 2023-04-14 22:32 Bubble_e 阅读(60) 评论(0) 推荐(0)