摘要:题型 给定一个数组(可以是高维度数组),若目标结果是求删掉数组中的一个元素后,剩余的全部元素进行运算的结果的最佳值,一般考虑前后缀分解。 若是求一个数组的子数组(子数组是指元素下标位置连续),也可以通过前后缀分解得到。任意一个子数组,都可以通过原数组减去一个前缀数组和一个后缀数组得到。 模板 for
阅读全文
摘要:题意 第一行,输入一个正整数 \(n(1 \leq n \leq 2*10^5)\),代表字符串 \(s\) 的长度。 第二行,输入一个字符串 \(s\)。 第三行,输入一个正整数 \(m(1 \leq m \leq 5*10^4)\),代表接下来要输入的询问次数,对于每次询问:输入一个字符串 \(
阅读全文
摘要:题解 首先思考暴力枚举长度为 \(len∈[1, min(strlen(s), strlen(t))]\),最差情况下为字符串 \(s\) 和字符串 \(t\) 全为长度为 \(10000\) 的全英文字符串,时间复杂度: \(O(n^2)\),显然会超时。 容易证明的是:若存在一个长度为 \(x\
阅读全文
摘要:题目 https://codeforces.com/problemset/problem/2026/D 题意 第一行输入一个正整数 \(n(1 \leq n \leq 3e5)\),第二行输入 \(n\) 个整数 \(a_1, a_2, ..., a_i, ..., a_n(-10 \leq a_i
阅读全文
摘要:题意 第一行输入一个正整数 \(T(1 \leq T \leq 1000)\),表示共有 \(T\) 组测试用例。对于每一组测试用例: 第一行输入三个正整数 \(n, m, k(1 \leq m \leq n \leq 3500, 0 \leq k \leq n - 1)\),且保证 \(n\) 之
阅读全文
摘要:前言 对于一个在定义域上极值点的函数,可以求取该函数在定义域上的极值和最值。对于一个凸函数,其极值点对应的函数值就是极小值;对于一个凹函数,其极值点对应的函数就是极大值。且函数若在定义域内有且仅有一个极值点,那么极值点也是最值点。函数的最值,要么出现在极值点,要么出现在定义域上的端点。 对于三分法,
阅读全文
摘要:题目 https://codeforces.com/problemset/problem/2044/H 题意 第一行,输入一个正整数 \(T(1 \leq T \leq 1000)\),代表总共 \(T\) 组测试用例。对于每组测试用例:第一行输入两个正整数 \(n, q(1 \leq n \leq
阅读全文
摘要:题目 https://codeforces.com/problemset/problem/1789/C 题意 第一行输入一个正整数 \(T(1 \leq T \leq 10^4)\),代表 \(T\) 组测试用例。 对于每组测试用例:第一行输入两个正整数 \(n, m(1 \leq n, m \le
阅读全文
摘要:题目 https://atcoder.jp/contests/abc379/tasks/abc379_f 题意 第一行输入两个正整数 \(n, q(2 \leq n \leq 2 \times 10^5, 1 \leq q \leq 2 \times 10^5)\); 第二行输入长度为 \(n\)
阅读全文
摘要:题目 https://atcoder.jp/contests/abc393/tasks/abc393_d 题意 给定一个长为 \(n\) 的 \(01\) 字符串 \(s\),可以执行任意次以下操作: 选择两个相邻的下标,交换这两个位置上的字符,每次操作的代价为 \(1\)。 求让全部字符 \(1\
阅读全文
摘要:题目 https://leetcode.cn/problems/majority-element-ii/description/ 题解 在一个长为 \(n\) 的数组中,如果有一个数的出现次数会超过 \(\frac{n}{2}\) 次,用多阵营厮杀的观念来看待,超过 \(\frac{n}{2}\)
阅读全文
摘要:题目 https://leetcode.cn/problems/maximize-the-minimum-powered-city/description/ 题解 以stations = [1,2,4,5,0], r = 1, k = 2为测试用例进行讲解,从第 1 座城市到第 5 座城市对各个城市
阅读全文
摘要:题目 https://leetcode.cn/problems/increment-submatrices-by-one/description/ 题解 这是一道二维差分的典题,但是为了实现二维差分,我们首先需要掌握前置知识二维前缀和。接下来我先向大家介绍二维前缀和的意义、定义和用法: 二维前缀和的
阅读全文
摘要:前言 二维单调队列简介 二维单调队列是一维单调队列在二维矩阵上的扩展,适用于二维滑动窗口的最值问题,可以在 \(O(m \times n)\) 的时间复杂度内求出矩阵中每个固定大小子矩阵的最值。 二维单调队列的基本思想 二维单调队列的实现通常分为两步: 行方向的一维单调队列:对每一行使用单调队列,求
阅读全文
摘要:前言 零点定理:如果函数 \(f(x)\) 在闭区间 \([a, b]\) 上连续,且 \(f(a) \times f(b) < 0\)(即函数在两端点值异号),则在开区间 \((a, b)\) 内至少存在一点 \(c\),使得 \(f(c) = 0\)。 零点定理是连续函数的一个重要性质,也是二分
阅读全文