摘要:
编写折叠代码块: <details> <summary>查看代码</summary> <pre> <code> 这里写需要被折叠的代码 </code> </pre> </details> 阅读全文
摘要:
[USACO23OPEN] Pareidolia S 对于这种题,两种思路,一种是直接 \(dp\),一种是考虑每个 bessie 产生的贡献。 显然直接考虑 bessie 产生的贡献难以解决 bbessie 的情况,所以考虑 \(dp\)。 设 \(f_{i}\) 表示以 \(i\) 开头的字符串 阅读全文
摘要:
杂七杂八 负数取模:数值和正数取模一致,符号取决于模号左边的数的正负。 如:\(10\%(-3)=1,-10\%3=-1\)。 大端小端:大端优先取前面,小端优先取后面(低位字节)。 如:0x1234,小端会取 0x34,大端会取 0x12。 各种排序算法的比较: 运算优先级比较: Windows和 阅读全文
摘要:
CSP-S 2024 游记 赛前 和老潘一起复习我做过的有意思的 \(dp\),并复习了去年的真题,我:复习完 \(dp\),下午一定能切掉 \(dp\) 题。(flag+1) 带了可口可乐和 \(90\%\) 巧克力,可口可乐,但监考员说巧克力不给带!\(CCF\) 从当年的给考生发巧克力,到不发 阅读全文
摘要:
树形 \(dp\) 好题。 观察题目发现, 如果B国袭击后,导致A国两个军营不联通,那么B国袭击的一定是一条割边,反之,如果袭击的不是割边,那么不会导致任何影响。 所以先进行边双缩点,变成一棵树,记每个联通块(缩完后)内的点数为 \(wa\),边数为 \(wb\),不妨先考虑对于树的情况如何处理。 阅读全文
摘要:
F. Make a Palindrome 给定一个由 \(n\) 个整数组成的数组 \(a\) 。 让函数 \(f(b)\) 返回使数组 \(b\) 成为回文所需的最小操作次数。您可以进行的操作有: 选择两个相邻的元素 \(b_i\) 和 \(b_{i+1}\) ,删除它们,并用一个元素 \((b_ 阅读全文
摘要:
给定 \(n\) 个字符串,长度总和不超过 \(m\),试求这 \(n\) 个字符串的最长公共子串长度。 \(1\le n,m\le 10^5\) 对于这种求最长公共子串的问题,我们可以用哈希解决。 不难发现,最长公共子串具有单调性,这提示我们二分答案。 对于二分的长度 \(len\),考虑如何检验 阅读全文
摘要:
题目链接 给出 n 个数,要求从中选出任意个数,使之能划分为和相等的两组,求方案数。 \(1\le n\le 23,1\le x\le 10^8\). 一道非常不错的”折半“搜索。 注意:同样一组选数,划分方法不同不会重复计数。 “划分为和相等的两组” 可以进行一定的转化,比如:对于数列:\(1,2 阅读全文
摘要:
题目链接 先将题目进行抽象(此处省去一定的数学分析),有以下式子: 设 \(S(i)=\sum_{j=1}^{i}j\times a_j\) ,及 \(S2(i)=\sum_{j=1}^{i}a_j\) 那么一段区间 \([l,r]\) 的贡献计算即: \[S(r)-S(l-1)-(l-1)\tim 阅读全文
摘要:
[题目链接](Restorer Distance - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)) 发现,操作三(移动砖块)也可以转化为先拿一个砖块(操作二),再放一个砖块(操作一),那么当 \(M\le A+R\) 时,当然尽可能使用操作三,但是当 \(M>A+R\) 时,使用操 阅读全文
摘要:
Manacher 算法可在 \(O(n)\) 解决最长回文串的问题。 通过预处理 \(d_i\) 表示以 \(i\) 为中心的回文串向两边延伸的最长长度来解决原问题。 如对于字符串 abcba(下标从\(1\)开始),\(d_3=3\),即 \(cba\)。 P3805【模板】manacher 算法 阅读全文
摘要:
题目链接 \(50 pts\) 对于没有 \(Y\) 砖的情况,可以用分组背包解决,算出每一列打 \(j\) 块砖需要的子弹以及对分数的贡献,按照分组背包即可。 对于包含 \(Y\) 砖的情况,不能直接分组背包解决。这实际上是打的顺序问题,比如: N Y N Y 如果手上有两枚子弹,最优策略是先打掉 阅读全文
摘要:
题目描述 首先将彩蛋按照横坐标从小到大排序,依次标号为 \(1\sim n\)。 显然,\(Sue\)走过一段时间后,走过的点一定属于一段连续区间。所以本题采用区间 \(dp\)。 不妨先做一个简单转化,由于每个彩蛋初始高度确定,若想让总分最高,就要使扣分最少。所以下面的 \(dp\) 从扣分最少入 阅读全文
摘要:
题目链接 设 \(f_{i,t1,t2}\) 表示前 \(i\) 本书,第一层的宽度为 \(t1\),第二层的宽度为 \(t2\),所需要的最小高度。 第三层宽度 \(t3=\sum_{i=1}^{i}t_i-t1-t2\)。 但本题还有一个重要限制:每层的高度取决于该层最高的书,如果直接按照顺序加 阅读全文
摘要:
题目链接 思考方向:构造方法满足 \(A\) 的要求,再满足 \(B\) 的要求。 如果只考虑 \(A\),有一种显然的方案:将 \(A\) 从大到小排序,选出前 \(\left \lfloor \frac{n}{2} \right \rfloor+1\) 大的即可。但这样显然难以扩展,所以需要另寻 阅读全文
摘要:
题目链接 如果没有“配对数字不相同”的限制,将 \(a,b\) 数组排序后一 一配对就能得到最小值。 回到原题,考虑一种极端情况,\(\forall i\in [1,n],a_i=b_i\) 即排序后全等。 若 \(n\) 为偶数,一种显然的构造方法是: 1 2 3 4 5 6 2 1 4 3 6 阅读全文
摘要:
题目链接 方向:由 \(2^{40}=10^{12}\),以及对若干坐标的表示,不难想到从二进制入手。 首先奇偶性不同必然无解。 阅读全文