当前位置: 首页 > news >正文

【未完成】2025.9 做题记录

CF1310C

CF616F

CF1065G

CF1536F. Omkar and Akmar *2600

题意

Alice 和 Bob 在一个 \(n\) 个格子的环上玩游戏,环上的格子编号为 \(1\sim n\)

每一轮中,玩家可选择一个空格子填入字母 A 或 B,同时要求不能存在两个相邻的格子内的字母相同。若没有合法操作,则游戏结束,当前玩家失败。

假设 Alice 和 Bob 每局游戏两个人都按最优策略行动,问有多少种可能的不同游戏。两种游戏不同,当且仅当回合数不同,或者对于某个回合,放置的字母或单元格编号不同。答案对 \(10^9+7\) 取模。

\(n\leq 10^6\)

题解

核心思想:枚举最后局面,计算每个最后局面对答案的贡献。

首先,两个玩家肯定是能操作就操作,因此最后局面肯定不能继续操作。

那么最后局面一定是一个 ABAB 交替的环上序列,中间穿插若干不相邻的空位。

因为这是环上 ABAB 交替的序列,所以最后填上数的位置个数必定为偶数,因此后手必胜。

当最后局面确定时,两个玩家可以随便操作。因为这相当于有若干个石子,每次操作取走恰好一个石子的简单博弈问题。

假设我们最后确定的局面有 \(i\) 个空格,那么这个局面的操作方案书就是 \((n-i)!\)

我们枚举空格个数,然后计算满足条件的局面个数。再乘上操作方案数。

当空格个数确定时,由于要求空格不能相邻,因此考虑插板,为了方便插板,我们假设环上一开始只有 ABAB...,然后把环从第一次操作的地方断开,对于断开的链,每个位置的后面可以选择放不放空格。

因此,空格个数为 \(i\) 时,总方案数为 \(2\times n\times \binom{n-i}{i}\times (n-i-1)!\)

\(2\) 是因为 AB 可以互换,乘 \(n\) 是因为这是有标号环,需要枚举断开位置的标号。

空格个数一定与 \(n\) 奇偶相同,最后答案为 \(\sum\limits_{i=n\bmod 2}^{\lfloor \frac{n}{2}\rfloor} \left(2\times n\times \binom{n-i}{i}\times (n-i-1)!\right)\)

提交记录

2025/9/7 NOIP 模拟赛 T4 *????

题意

\(n\) 个点的有标号无根树的直径之和。

\(n\leq 500\)

题解

核心思想:以所有直径的交点/边为中心。

\(f_{i,j}\) 表示 \(i\) 个点编号为 \(1\sim i\),深度不超过 \(j\) 的有标号有根树的数量。

\(g_{i,j}\) 表示 \(i\) 个点编号为 \(1\sim i\),深度不超过 \(j\) 的有标号叶向森林(即 \(f\) 去掉根)数量。

如果所有直径交于一边,即直径长度为 \(2k+1\),那么枚举两边点的个数 \(x,n-x\),答案为 \(\sum\limits_{x=1}^{n} (f_{x,k}-f_{x,k-1})\times (f_{n-x,k}-f_{n-x,k-1})\times \binom{n}{x}\div 2\),除以 \(2\) 的原因是交边两侧是无序的。

但是模数不质,且常数不允许我们再存一个 \(2\) 因子,我们不能除以二,考虑强制让 \(1\) 在左侧,即 \(\sum\limits_{x=1}^{n} (f_{x,k}-f_{x,k-1})\times (f_{n-x,k}-f_{n-x,k-1})\times \binom{n-1}{x-1}\)

如果所有直径交于一点,即直径长度为 \(2k\),那么这个点所有子树至少有 \(2\) 个深度等于 \(k\),容斥,答案为 \(n\times \left( g_{n-1,k}-g_{n-1,k-1}-\sum\limits_{x=1}^{n-1} (f_{x,k}-f_{x,k-1})\times g_{n-1-x,k-1}\times \binom{n-1}{x} \right)\)

考虑如何求 \(f\),显然有 \(f_{i,j}=g_{i-1,j-1}\times i\)

考虑如何求 \(g\),有 \(g_{i,j}=\sum\limits_{k=1}^{i} g_{i-k,j}\times f_{k,j}\times \binom{i-1}{k-1}\)

解释一下 \(g\) 的转移,有一个错误的想法是 \(g_{i,j}=\sum\limits_{k=1}^{i} g_{i-k,j}\times f_{k,j}\times \color{red}\binom{i}{k}\),但是这样算,子树是有序的,因此会算重。

考虑把子树按照一定顺序排序,并有序的加入这些子树,由于我们在实时分配编号,因此考虑按子树内的最小值降序排序,然后每次强制让 \(1\) 出现在新的子树里,即 \(g_{i,j}=\sum\limits_{k=1}^{i} g_{i-k,j}\times f_{k,j}\times \binom{i-1}{k-1}\)

初始时 \(f_{0,i}=g_{0,i}=1\)

提交记录

CF1038F. Wrap Around *2900

题意

给定一个字符串 \(s\),字符集为 \(\{0,1\}\)

求有多少长度为 \(n\) 的字符串 \(t\),满足以 \(t\) 为循环节的无限循环字符串包含 \(s\)

\(1\le|s|\le n\le 40\)

题解

\(s\) 在无限循环的 \(t\) 中出现,等价于 \(s\)\(t^2\) 中出现。

考虑建立 KMP 自动机,在自动机上 DP。

但是直接对 \(t^2\) 的结构做 DP 会导致有后效性。

考虑 DP 为什么无法处理 \(t^2\) 的情况,因为正常 KMP 自动机上 DP 只能处理往后加入一个字符,而维护 \(t^2\) 要求我们往中间插入字符。

考虑把 DP 改成只往后加字符的情况。只往后加字符,一种想法是假设 \(t\) 在 KMP 自动机的结束状态确定,然后往后加第二个 \(t\)

时间充裕,因此可以直接枚举 \(t\) 在自动机上最后的节点 \(p\),令 \(f_{i,j,k}\) 表示 \(|t|=i\)\(t\) 在自动机上走到了 \(j\)\(t^2\) 在自动机上走到了 \(k\),初值令 \(f_{0,0,p}=1\) 即可。

时间复杂度 \(O(n^4)\)

提交记录

CF587F. Duff is Mad *3000

题意

给定 \(n\) 个字符串 \(s_1…s_n\)。定义 \(f_y (x)\) 表示 \(s_x\)\(s_y\) 中出现的次数。

\(q\) 次询问,每次给定 \(l,r,k\),求 \(\sum\limits_{i=l}^{r} f_k (i)\)

\(n, q, \sum_{i=1}^n |s_i| \leq 10^5\)

题解

*所有复杂度认为 \(n,q,|s_i|\) 同阶。

搬到 ACAM 上,发现问题可以转化为如下形式:

  • 给定 \(n\) 个点集,保证点集大小之和不超过 \(10^5\),每次询问给定 \(l,r,k\),求编号在 \([l,r]\) 的点中,子树内含有第 \(k\) 个点集中点的个数之和。

直接做很难做,考虑反过来,变成把编号在 \([l,r]\) 的点的子树加一,然后求第 \(k\) 个点集的权值和。

然后如果点集大小为 \(1\),就可以直接做了。

保证点集大小之和不超过 \(10^5\),可以根号分治,点集大小不超过 \(B\) 的直接暴力,复杂度 \(O(nB\log n)\),点集大小大于 \(B\) 的点集不超过 \(\frac{n}{B}\) 个,提前预处理每个点进行子树加对这些点集的贡献,然后维护 \(O(\frac{n}{B})\) 个 BIT 一起扫描线,复杂度 \(O(\frac{n^2}{B})\)

\(nB\log n=\frac{n^2}{B}\),即 \(B=\sqrt{\frac{n}{\log n}}\),此时复杂度为 \(O(n\sqrt{n \log n})\)

但是由于 \(O(\frac{n^2}{B})\) 的空间复杂度无法接受,因此最后决定令 \(B=10^{2.5}=316\),此时当 \(n,q,|s|=100000\) 时,时间复杂度为 \(O(n\sqrt{n}\log n)\)

提交记录

CF1400F. x-prime Substrings *2800

题意

给定一个整数 \(x\) 和一个只包含数字 \(1\)\(9\) 的字符串 \(s\)。设 \(f(l, r)\) 表示子串 \(s[l..r]\) 的数字之和。

我们称子串 \(s[l_1..r_1]\)\(x\)-prime,当且仅当:

  • \(f(l_1, r_1) = x\)
  • 不存在 \(l_2, r_2\) 满足:
    • \(l_1 \le l_2 \le r_2 \le r_1\)
    • \(f(l_2, r_2) \neq x\)
    • \(x\) 能被 \(f(l_2, r_2)\) 整除。

你可以从字符串中删除一些字符。每删除一个字符,字符串会被分成两部分并直接拼接,顺序不变。

请问,最少需要删除多少个字符,才能使字符串中不存在 \(x\)-prime 子串?如果原字符串中本就不存在 \(x\)-prime 子串,则输出 \(0\)

\(1\leq |s|\leq 1000\)\(1\leq x\leq 20\)

题解

考虑要求一些子串不能出现,即多模匹配,搬到 ACAM 上考虑。

\(x\leq 20\),发现 \(x\)-prime 字符串总数不会太多,最多的时候是 \(x=19\),此时所有 \(x\)-prime 字符串建出的 ACAM 大小为 \(4852\)

因此暴力建出 ACAM 后跑 DP 即可,\(dp_{i,j}\) 表示前 \(i\) 个字符走到 ACAM 的 \(j\) 号点最小要删去几个字符,转移显然。

提交记录

CF2045E. Narrower Passageway *2700

题意

有一个 \(2\)\(N\) 列的网格。我们用 \((r, c)\) 表示网格中第 \(r\) 行第 \(c\) 列的格子。每天会安排一个力量值为 \(P_{r, c}\) 的士兵驻守在 \((r, c)\) 位置上。

每列都有 \(50\%\) 的概率被雾气笼罩。定义连通区域 \([u, v]\)\(u \leq v\))为从第 \(u\) 列到第 \(v\) 列连续且无雾的列。

连通区域 \([u, v]\) 的力量可以这样计算。设 \(m_1\)\(m_2\) 分别为该区域内第一行和第二行士兵力量的最大值。具体来说,对于 \(r \in \{1, 2\}\),有 \(m_r = \max (P_{r, u}, P_{r, u + 1}, \dots, P_{r, v})\)。如果 \(m_1 = m_2\),则该区域的力量是 \(0\);否则,力量为 \(\min (m_1, m_2)\)

一个工作日的总力量定义为所有连通区域力量的总和。请计算在任意一天部署的期望总力量。

\(1\leq N\leq 10^5\)

题解

硬讨论也能做,但是有更简单的做法。

变换一下贡献计算形式,对于一个区间,令其贡献为 \(m1+m2-m1[m1=\max(m1,m2)]-m2[m2=\max(m1,m2)]\)

所有区间 \(m1\)\(m2\) 的和都是好求的,\(m1[m1=\max(m1,m2)]\)\(m2[m2=\max(m1,m2)]\) 只需要在单调栈算区间时,规定当前数不小于该区间所对另一行的所有数即可。

提交记录

NOIP 模拟 T3 *????

题意

比较难以描述……

题解

建立笛卡尔树,问题转化为选 \(k\) 个叶子并删除其到根链,最大化删除点权值和。

树形DP,令 \(f_{i,j}\) 表示子树 \(i\) 内选择 \(j\) 个叶子的答案。

\(f_{u,j}=w_u+\max\limits_{0\leq x\leq j} \{f_{ls_u}{x}+f_{rs_u}{j-x}\}\)

不好继续优化,考虑维护 \(f\) 的差分数组,那么贪心地,\(f_u\) 的差分数组就是把 \(f_{ls_u},f_{rs_u}\) 的差分数组从大到小归并,再把第一项加上 \(w_u\)

贪心的正确性在于,总和一定,要让 \(f\) 最优肯定先选择增量大的叶子。

因此每个点维护一个 set 表示这个点 \(f\) 的差分数组,然后启发式合并即可。

提交记录

CF150E. Freezing with Style *3000

题意

给定一颗带边权的树,求一条边数在 \([L,R]\) 之间的路径,并使得路径上边权的中位数最大。输出一条可行路径的两个端点。

\(n\leq 10^5\)

题解

二分答案 \(Mid\),将 \(\geq Mid\) 的边都赋值为 \(1\),其余边赋值为 \(-1\),点分治求最大权值和路径检查其是否 \(\geq 0\) 即可。

点分治中需要使用单调队列代替线段树,并按照子树大小或深度从小到大遍历保证单调队列复杂度,还要进行一些必要的剪枝(找到一条 \(\geq 0\) 的路径后立即退出)。

提交记录

AT_arc072_d [ARC072F] Dam 紫

题意

你负责管理一个最多能储存 \(L\) 升水的水库。一开始,水库是空的。接下来 \(n\) 天,第 \(i\) 天早上,有 \(v\)\(t_i\) ℃ 的水会流进来;每天晚上,你可以决定要放多少水,但你必须保证第二天水不会溢出。水不会蒸发,温度也和流进水之外的因素无关。\(v_1\)\(t_1\) ℃ 的水与 \(v_2\)\(t_2\) ℃ 的水混合后的温度为 \(\dfrac {t_1v_1+t_2v_2}{v_1+v_2}\)。对于第 \(i (i \in [1,n] \cap \mathbb N)\) 天,你需要求出最后水库是满的的情况下能达到的最高水温。不同日期的答案相互独立。

\(1 \le n \le 5 \times 10^5\)

题解

考虑一个贪心,如果 \(i+1\) 时刻加入水的水温比 \(i\) 时刻冷,那么 \(i\) 时刻一定选择不放水,以提高 \(i+1\) 时刻的水温。即使要放水,也是先加入 \(i+1\) 时刻的水,再一起放,这样剩余水温一定不会变差。

那么,我们把所有相邻温度递减的操作合并成一个操作,重复这个过程直到操作满足温度递增。

之后,我们肯定是能放水就放水,但是要保证询问时水池内水的体积等于 \(L\)。手动模拟一下,发现被放掉的水不可能在流回来,流回来也不会更优。因此询问可以等价成:指定体积的滑动窗口,求体积乘以温度的和,单调队列即可。

提交记录

P11283 「GFOI Round 2」Turtle and Nediam 紫

题意

对一个元素互不相同的长度 \(\ge 3\) 的正整数序列 \(a\),定义 \(a\) 的“肿胃数(nediam)”\(f(a)\) 为:

  • \(|a| = 3\) 时,\(f(a)\)\(a\) 的中位数;
  • \(|a| > 3\) 时,取 \(a\) 的任意一个长度为 \(3\) 的子段 \([a_i, a_{i + 1}, a_{i + 2}]\),记这个子段的中位数为 \(x\)\(a\) 删掉 \(x\) 后的序列为 \(b\)\(f(a)\) 为所有 \(b\)\(f(b)\) 的最大值。

乌龟给你一个 \(1 \sim n\) 的排列 \(p_1, p_2, \ldots, p_n\)\(m\) 次询问,每次询问给定 \(l, r\),你需要求出 \([p_l, p_{l + 1}, \ldots, p_r]\) 的“肿胃数(nediam)”,即 \(f([p_l, p_{l + 1}, \ldots, p_r])\)

\(n\leq 10^6\)\(m\leq 5\times 10^6\)

题解

第一反应是找次大值,但这是错的。考虑寻找最大值可能成为答案的区间,因为次大值本质上是原序列某个子区间的最大值。

先找出全局最大值 \(a_x=mx\),显然 \(mx\) 不能成为答案,也不会被删除。并且 \(mx\) 会把数列分为两部分。

\([1,x)\) 为左侧序列,\((x,n]\) 为右侧序列。

只对左侧序列讨论,右侧序列与左侧序列类似。

考虑左侧序列的最大值 \(a_i\) 能否成为答案,为了验证这件事,首先要观察一些删除数的性质:

  • 对于序列的子串 \(a_{l\sim r}\),满足 \(a_p(l\leq p\leq r)\) 是最小值且 \(a_q(l\leq q\leq r)\) 是最大值,那么一定可以把该子序列删到只剩 \(a_p\)\(a_q\)。证明显然。
  • 对于序列的子串 \(a_{l\sim r}\),满足 \(a_p(l\leq p\leq r)\) 是最小值且 \(a_q(l\leq q\leq r)\) 是最大值,如果最后只能保留两个数字,那么这两个数字一定是 \(a_p\)\(a_q\)。证明显然。

为了方便讨论,我们记 \(a_y\)\([1,x)\) 的最小值,\(a_z\)\((x,n]\) 的最小值。

根据性质,为了保留 \(a_i\),我们可以且必须先把序列删到只剩下 \(a_{i/y},a_{y/i},(a_r),a_x,a_z\),因为 \([y,x]\) 最多保留两个,\([x,n]\) 最多保留两个。注意 \(i,y\) 顺序不确定(\(a_r\) 的定义将在 \(y<i\) 的讨论中解释)。

如果 \(y<i\),即 \(a_y,a_i,a_r,a_x,a_z\)\(a_r\) 表示 \([i,x]\) 的最小值,那么如果 \(a_z>a_r\)\(a_i\) 可以成为答案,操作步骤为 \(y,i,r,x,z\to y,i,r,x\to i,r,x 或 y,i,x\)(这里用下标代替值简写);否则为了保留 \(a_i\)\(a_r\) 一定会被删除,\(a_r\) 被删除后无论下一步如何操作都会删掉 \(a_i\)

如果 \(y>i\),即 \(a_i,a_y,a_x,a_z\),删掉 \(a_y,a_x,a_z\) 的中位数即可。

因此 \(a_i\) 能成为答案的充要条件是 \(y>i\)

我们发现 \(y\) 把左侧区间又分为了两部分,我们记 \([1,y)\) 的最大值为 \(a_p\)\((y,x)\) 的最大值为 \(a_q\)

那么 \(a_p\) 一定可以作为答案,当 \(a_q<a_z\)\(a_q\) 也可以成为答案。

特判 \(a_y,a_z\),这两个数的较大值也能成为答案。

右侧是一样的,需要实现的功能是静态 RMQ,使用 ST 表即可。

upd 我们发现刚刚推理有误。Hack 1 4 2 5 6 3,答案为 \(4\)

原因是,\((y,x)\) 中可能存在一个数,满足这个数能作为答案但不是 \((x,y)\) 的最大值。

因此正确做法是找出最靠右的 \(w\),满足 \(a_w<a_z\),然后用 \((y,w)\) 的最大值更新答案。

搞一个单调栈单独维护这个东西。

提交记录

P6913 [ICPC 2015 WF] Tile Cutting 紫

题意

原题面不好描述,这里省掉一步转化。

\(f(x)=|\{(a,b,c,d)|a,b,c,d\in \N\land ad+bc=x\}|\),有 \(n\) 次询问,每次给定 \(l,r\),求 \(\max\limits_{i=l}^{r} f(i)\)

题解

\(d(x)\) 表示 \(x\) 的因数个数。

\[f(n)=\sum\limits_{a+b=n} d(a)\times d(b) \\ =\sum\limits_{a}\sum\limits_{x|(n-a)} d(a) \\ =\sum\limits_{x}\sum\limits_{k} d(n-kx) \]

考虑根号分治,设 \(B=\sqrt n\)

\[f(n)=\sum\limits_{x=1}^{B} \sum\limits_{k} d(n-kx)+\sum\limits_{x=B+1}^{n} \sum\limits_{k=1}^{\frac{n}{x}} d(n-kx) \\ =\sum\limits_{x=1}^{B} \sum\limits_{i=1}^{n} d(i)\times [n\bmod x=i\bmod x]+\sum\limits_{k=1}^{\frac{n}{B}}\sum\limits_{x=B+1}^{\frac{n}{k}} d(n-kx) \]

\(t_{x,y}=\sum\limits_{i=1}^{n} [i\bmod x=y]\times d(i)\ \big(x,y\leq B\big)\)\(g_{n,k}=\sum\limits_{x\geq 0} d(n-kx)\)

\[f_{n}=\sum\limits_{x=1}^{B} t_{x,n\bmod x}+\sum\limits_{k=1}^{\frac{n}{B}} g_{n-(B+1)\times k,k} \\ g_{n,k}=g_{n-k,k}+d(n) \]

\(g\) 需要重复利用以节省空间,注意特殊处理 \(n<B\) 的情况。

我们可以在 \(O(n\sqrt n)\) 的时间复杂度内求出所有 \(f\),之后使用 ST 表查最值即可。

提交记录

CF2013F2 Game in Tree (Hard Version) *3500

题意

Alice 和 Bob 在一棵 \(n\) 个节点的树上玩游戏,规则如下:双方轮流移动,爱丽丝先手。每位玩家在自己的回合中,必须移动到一个未被访问过(无论自己或对手)的相邻节点上。第一个无法移动的玩家输掉游戏。

爱丽丝初始位于 \(1\) 号节点,你需要对于给定简单路径 \(u\to v\)(一定不穿过 \(1\))上的每个节点 \(c\) 判断:若 Bob 初始位于 \(c\),谁将获胜。

玩家的初始位置也被视为访问过的节点。

\(n\leq 2\times 10^5\)

题解

\(dep_{u}\) 表示 \(u\) 的深度,\(dep_{1}=0\)\(length_{u}\) 表示 \(u\) 去掉 \(1\to c\) 的点后子树下的最大深度。

对于点 \(c\),Alice 获胜的充要条件是:

\[\exist u,dep_{c}+\max\limits_{v\in (1\to c)\land dep_{v}>dep_{u}} \{-dep_{v}+length_{v}\}-length_{u}<dep_{u}\leq \lfloor\frac{dep_{c}}{2}\rfloor \]

对于这种复杂的式子,考虑放缩,以缩小 \(u\) 的范围。

对于一个拐点 \(u\),它能使 Alice 获胜的必要条件是 \(dep_{u}+length_{u}-1>dep_{c}-dep_{u}-1\)

\(2\times dep_{u}+length_u>dep_c\)

由于 \(dep_c\) 是常量,\(\sum length_{u}\leq n\),考虑根号分治。

\(length_{u}<B\) 时,\(dep_u\) 的范围极差为 \(O(B)\) 级别。

\(length_u\geq B\) 时,\(u\) 的个数时 \(O(\frac{n}{B})\) 级别。

\(B=\sqrt n\) 即可,时间复杂度 \(O(n\sqrt n)\)

对路径上每个点求 \(length\) 还是有一些细节的。

代码没调完QwQ。

相关文章:

【未完成】2025.9 做题记录

CF1310C CF616F CF1065G CF1536F. Omkar and Akmar *2600 题意 Alice 和 Bob 在一个 \(n\) 个格子的环上玩游戏,环上的格子编号为 \(1\sim n\)。 每一轮中,玩家可选择一个空格子填入字母 A 或 B,同时要求不能存在两个相邻的格子内的字母相同。若没有合法操作,则游戏结束,当…...

2025.8 做题记录

P4064 [JXOI2017] 加法 蓝 题意 可怜有一个长度为 \(n\) 的正整数序列 \(A\),但是她觉得 \(A\) 中的数字太小了,这让她很不开心。 于是她选择了 \(m\) 个区间 \([l_i,r_i]\) 和两个正整数 \(a,k\)。她打算从这 \(m\) 个区间里选出恰好 \(k\) 个区间,并对每个区间执行一次区间…...

关于 “Thinking Machines Lab首次发长文” 的一些知识的学习和补充

1. 前言砚上三五笔,落墨鹧鸪啼原文链接: https://thinkingmachines.ai/ 相关分析链接:https://www.gongjiyun.com/blog/2025/9/fu1xw1spci9vnokjipecs9y9nzn/最近看到一篇名为《击败 LLM 推理中的非确定性:从“玄学”到可控》的文章,这里将一些知识盲区简单记录下。 如有不…...

CF1630F 题解 | 网络流

传送门 题意 给你一个长度为 \(n\) 的序列 \(a\),构建一个无向图:若 \(a_i | a_j\),则在 \(i\) 和 \(j\) 中连边。 求最少删除多少个点,才能使得剩下的图是二分图。 思路 首先,我们知道倍数关系是一个偏序关系,即 \(a_i | a_j, a_j | a_k \rightarrow a_i | a_k\)。 所以…...

攻防世界-secret-galaxy-300 - xxx

先查壳,无壳,32位程序先运行一下这个exe程序,发现闪一下就消失了,也没有什么提示字符串可查看。打算先去od里面运行看看 打开后没看到什么,查看字符串一时间也没看出什么,不过这个task函数倒是让控制台输出一堆奇怪的东西说实话看了之后有点懵,不过没关系,既然OD没什么…...

实用指南:LeetCode 面试经典 150_哈希表_单词规律(41_290_C++_简单)

实用指南:LeetCode 面试经典 150_哈希表_单词规律(41_290_C++_简单)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier …...

数据库

数据库操作DDL 创建 create database 数据库名查询 show databases ; show database like 数据库名;修改 alter database 数据库名 set 字段名 类型 约束;删除 drop database 数据库名;使用 use 数据库名;数据库表操作DDL 创建 create table 表名(字段 类型 索引);查看表…...

代码随想录算法训练营第二天 | leetcode 209

长度最小的子数组(没做出来) 题目要求:寻找一个数组中满足大于等于目标要求的最小子数组 解题思路:返回结果可能是不存在,所以需要定义一个合适的初始值,可以使用java的最大数Integer.MAX_VALUE,然后使用滑动窗口寻找满足条件的子数组,这时还需要对之前的数进行减去,避…...

mpv硬件解码

mpv --hwdec=yes --vo=vappi 3e559881c836c30321894b20ae102c4e.mp4...

2025.9.78——卷6-8选择

卷6选择 大O表示法 大O表示法由​​德国数学家保罗巴赫曼(Paul Bachman)提出,用于表示算法的最坏情况下时间复杂度 Θ表示法 Θ表示法通常归功于​​计算机科学家Donald Knuth​​等人,用于描述算法的平均时间复杂度 ST表 预处理时间复杂度O(NlogN),查询O(logN) AVL树 一种…...

关于pytorch的读书报告

PyTorch 读书报告 一、引言 PyTorch 是由 Facebook(现 Meta)人工智能研究实验室开发的一款开源机器学习框架,自 2016 年推出以来,凭借其动态计算图特性、简洁直观的 API 设计以及强大的生态系统,迅速成为学术界和工业界深度学习研究与应用的主流工具之一。本报告将围绕 Py…...

Emacs 折腾日记(三十)——打造C++ IDE 续

上一篇博客中,我完成了C++ IDE初步工作,包括代码的高亮、折叠、跳转以及补全等工作。但是作为IDE来说功能还有点不够,就我个人而言作为IDE来说它还需要具备一键编译运行和调试功能。这篇文章就来记录我是如何实现上述功能的 编译运行 我使用的演示项目比较简单,它的文件结构…...

数据结构 项目一

一:数据结构的基本概念 数据结构----研究数据的特性及数据之间存在的关系 算法+数据结构=程序。其中数据结构是指数据逻辑结构和物理结构,算法是对数据运算的描述。 用计算机解决一个具体问题时,首先从具体问题中抽象出一个适当的数学模型,然后设计一个能解此数学模型的算法…...

好烦

我不行了,一做初赛题就有一种莫名其妙的烦躁,根本就写不进去,一点都冷静不下来...

【STL库】哈希封装 unordered_map/unordered_set - 教程

【STL库】哈希封装 unordered_map/unordered_set - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", mon…...

用 Go 语言与 Tesseract OCR 识别英文数字验证码

一、安装与配置 安装 Tesseract OCR 你需要先安装 Tesseract OCR 引擎。具体步骤如下: Ubuntu: 更多内容访问ttocr.com或联系1436423940 sudo apt-get update sudo apt-get install tesseract-ocr macOS: brew install tesseract Windows: 可以从 Tesseract GitHub 下载并安装…...

FreeRTOS和LVGL组合使用教程

前言 关于这两者组合使用的教程,网上可以说是各种方法都有,移植的时候我也有遇到各种问题,在此处记录一下解决过程 问题 栈空间的分配问题 FreeRTOS和LVGL的栈分配都尽量多一点,不然后面的任务可能创建失败 lvgl心跳的问题 网上也有很多方法FreeRTOS钩子函数 单开一个定时器…...

Pip换源

清华大学源 比较全,但是没有torch pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple南京大学源 有torch但是很多包没有,建议用来安装torch pip3 install torch torchvision torchaudio --index-url https://mirrors.nju.edu.cn/pytorch…...

7zip压缩解压缩-测试CPU性能

前言全局说明在B站刷大佬视频的时候,看到UP在Debign linux 上用7z测试CPU性能,惊讶,7z还有这功能。 赶快打开手边的电脑,看看 Windows 上的 7z 有没有这功能,一用,果然有这个功能。 以前想知道CPU性能就只能装些 XX大师,现在有了这个小巧的工具,知道参考数值就很方便了…...

高数

1 求 \(\lim_{n\to\infty}\left(1-\frac 1n\right)^{n^2}\) 解: 首先证明 \(\lim_{n\to\infty}\left(1-\frac 1n\right)^{n}=e^{-1}\)。 \[\begin{align*} \lim_{n\to\infty}\left(1-\frac 1n\right)^{n} &=\lim_{n\to\infty}\left[\left(1-\frac 1n\right)^{(n-1)}\right…...

P5666 [CSP-S2019] 树的重心

分为 \(x \ne rt\) 和 \(x = rt\) 两种情况计算. 对于第一种情况,不难发现我们合法的裁减下来的连通块大小是在一个区间范围之内的,于是 DFS 时用一棵树状数组修改即可(因为这个大小可能是子树大小可能是子树外大小,这取决于你一条祖先链有哪些点),但子树内的 siz 可能会被记入…...

Java运行机制

Java 程序运行机制 编译型(compile) 解释型 程序运行机制 ![机制图](C:\Users\asus\Desktop\图集\屏幕截图 2025-09-18 204707.png)...

除自身以外数组的乘积-leetcode

题目描述 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度内完成此题。 示例 1: …...

【2022】SDRZ夏令营游记

为什么2022的游记会在2025年发? 因为感觉洛谷博客快扛不住了,决定开始搬运。今天是夏令营最后一天了,在机房里坐不住了,写篇游记来纪念一下。 day0: 这天是gryz65级三个校区的信竞同学第一次大会师。我成功与一区同学面基,线下见面和在网络上的印象完全不一样(《关于why…...

[论文笔记/评估方法] RELIABLE AND DIVERSE EVALUATION OF LLM MEDICAL KNOWLEDGE MASTERY

RELIABLE AND DIVERSE EVALUATION OF LLM MEDICAL KNOWLEDGE MASTERY该文章于2025年发表在ICLR(CCF A),早在2024年9月发布在arxiv。 文章地址:Reliable and Diverse Evaluation of LLM Medical Knowledge Mastery arXiv:[2409.14302] Reliable and diverse evaluation of …...

本地VMware Workstation Pro的rhel-server-7.9-x86_64服务器配置本地源

1. 安装好VMware Workstation Pro以及rhel-server-7.9-x86_64-dvd.iso后 2. 先对VMware Workstation 进行虚拟机关机 3. 对虚拟机的CD/DVD(SATA) 勾选设备状态为启动时连接,以及连接中勾选使用ISO镜像文件,为本地的rhel-server-7.9-x86_64-dvd.iso路径 4. 接下来就按如下操作…...

2025年十大AI网站构建工具:专家评测与推荐!

2025年,软件开发领域迎来一个关键转折点。随着 AI 技术的飞速发展,传统的网站或应用构建障碍正逐渐消失。市场上涌现出大量功能强大的工具,每一个都号称是您所需要的最佳 AI网站构建器 或 网站生成器。 然而,对于开发者、创业者乃至普通初学者而言,面对如此多的选择可能会…...

扫描线乱谈

扫描线乱谈前置知识 离散化,线段树 扫描线 首先假设你有n个矩形。如果直接暴力求解这些矩形的覆盖面积肯定不行,这时就要用扫描线算法。 假设有一根线,从下往上扫描:把每个小矩形分成很多不同的块,高是扫过的距离,那个位置没有被覆盖高就是0。显然答案就是高宽的和。 每次…...

详细介绍:量子计算学习(第十四周周报)

详细介绍:量子计算学习(第十四周周报)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !import…...

视频播放时切出页面视频暂停(亲测可用)

视频播放时切出页面视频暂停(亲测可用)谷歌浏览器方法:视频播放网页,右键—检查—Elements—Event Listeners—找到blur,点开小三角,remove掉所有子元素...

VulkanAPI细节梳理1

1. PSOPipeline State Object,管线状态对象)? PSO 是 Vulkan 的核心概念之一,它是一个包含了渲染所需几乎所有状态的、不可变的对象。你可以把它想象成一台高度可配置的工业机器(GPU)的完整配置方案。在传统 API(如 OpenGL)中,你可以在运行时动态地、单独地修改各种状…...

cf773

D. Perishable Roads 题意: 有一个 \(n\) 个点的图,对于每两个点 \((i,j)\) 之间都有一条长度为 \(w_{i,j}\) 的无向边。 给你一个点 \(t\),你需要构造一棵以 \(t\) 为根的生成树,使得 \(\sum_{i=1}^n s(i,t)\) 尽量小。\(s(i,t)\) 为 \(i\sim t\) 的树上路径上的最小权值。…...

(简记)一类区间覆盖问题 珂朵莉树 ODT

简介与实现方法 该结构是通过 STL set 来维护存储相同颜色(相同值)连续段的暴力数据结构,需要在 set 中存储若干个三元组 \((l,r,k)\) 表示 \([l,r]\) 的所有颜色(值)都是 \(k\)。 它的使用条件是数据随机。我们把区间覆盖或群体赋值称为区间推平操作,如果该操作较多单一…...

5 事务隔离级别与锁机制

事务是由一组SQL语句组成的逻辑处理单元, 事务具有ACID 属性。原子性(Atomicity) :事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。 一致性(Consistent) :在事务开始和完成时,数据都必须保持一致状态。这意味着所有相关的数据规 则都必须应用于事务的修…...

我向编程世界宣布的第一声

Hello World随便新建一个文件夹,,存放代码 新建一个java文件文件后缀名为.java Hello.java 【注意点】系统可能没有显示文件后缀名,我们需要手动打开3.编写代码 public class Hello{public static void main(String[] args){System.out.print("Hello,World!");} }…...

意大利 公证 海牙认证速度 单号 双号

支付宝小程序 领事服务中心 那里(对应北京的领事) 比较慢,审核要一周,邮寄过去再寄回来又要一周。总共两周。可以接受单号 微信 山东外事 小程序 (对应济南的领事,只接受山东内的公证)审核很快,一天就审核通过,然后,邮寄过去再寄回来要一周。总共一周就行。必须要双号…...

Linux命令学习笔记

cd命令 1.切换上级目录 cd ..2.切换到当前用户主目录 cd ~ 3.切换上两级目录 cd ../..4.进入当前目录 cd . cat命令 1.查看文件 cat test.txt 2.查看文件并展示行号空行展示 cat -n test.txt 3.查看文件并展示行号,空行不转式 cat -b test.txt 4.查看多个文件 cat test.txt…...

网络安全需要真正的承诺而非表面功夫

本文探讨企业网络安全的核心问题——真正的组织承诺。作者指出许多企业仅采取半吊子安全措施,强调网络安全需要从企业文化到软件开发方式的全面变革,而非依赖外部工具或培训。文章分析了安全厂商解决方案的局限性,并提出改变游戏规则的思考方向。在我上一篇文章中,我谈到我…...

想成为AI绘画高手?打造独一无二的视觉IP!Seedream 4.0 使用指南详解,创意无界,效率翻倍!

想成为AI绘画高手?打造独一无二的视觉IP!Seedream 4.0 使用指南详解,创意无界,效率翻倍!想成为AI绘画高手?打造独一无二的视觉IP!Seedream 4.0 使用指南详解,创意无界,效率翻倍! AI-Compass 致力于构建最全面、最实用、最前沿的AI技术学习和实践生态,通过六大核心模…...

完整教程:液氮低温恒温器的应用领域

完整教程:液氮低温恒温器的应用领域pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important;…...

轮转数组-leetcode

题目描述 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 示例 1: 输入: nums = [1,2,3,4,5,6,7], k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6] 向右轮转 2 步: [6,7,1,2,3,4,5] 向右轮转 3 步: [5,6,7,1,2,3,4]示例 2: 输…...

CF1864G Magic Square

题面:(粘自洛谷) CF1864G Magic Square 题目描述 Aquamoon 有一个魔方,可以看作一个 \(n \times n\) 矩阵,矩阵的元素构成数字的排列 $1, \ldots, n^2 $ 。 Aquamoon 可以对矩阵执行两种操作:行移位,即将矩阵的整行向右移动几个位置(至少 $ 1 $ 且最多 $ n-1 $ )。 超出…...

OI TRICKS

位运算 每一位是独立的,可以拆开处理 \(a, b \in \{0, 1\}\),则xor and or\(a \oplus 1 = 1- a\) \(a \ \text{and} \ 0 = 0\) \(a \ \text{or} \ 1 = 1\)\(a \oplus 0 = a\) \(a \ \text{and} \ 1 = a\) \(a \ \text{or} \ 0 = a\)$a \oplus b = a + b - 2ab $ \(a \ \t…...

day37大模型程序开发-GraphRAG理论

RAG基本回顾实现流程准备原始的知识库(一个一个的文件组成) 将知识库文件内容进行读取(完整的字符串) 分块处理(新知识库:一段一段的文本字符串组成) 向量转换:将每一段文本chunk转换成向量(向量模型) 将向量数据存储到向量数据库 接受用户的提问,将用户提问转换成向…...

G

int a[1000001]; int top=-1;//栈为空 void push(int num) { a[++top]=num; } void pop() { printf("%d ", a[top--]); }//减1出栈 int main() { int n, i; int b[1000001]={0}; int c[1000001]={0}; scanf("%d", &n); for(i=0;i<n;i++)scanf("…...

AI Compass前沿速览:Nano Bananary、MCP Registry、通义DeepResearch 、VoxCPM、InternVLAM1具身机器人

AI Compass前沿速览:Nano Bananary、MCP Registry、通义DeepResearch 、VoxCPM、InternVLAM1具身机器人AI Compass前沿速览: AI-Compass 致力于构建最全面、最实用、最前沿的AI技术学习和实践生态,通过六大核心模块的系统化组织,为不同层次的学习者和开发者提供从完整学习路…...

day3536大模型应用开发-模型微调框架

为什么需要微调? 在开始学习微调之前,大家首先还是要搞清楚为什么要微调?在什么情况下需要微调?让模型更懂“专业话”:通用模型就像一个“万事通”,它学过很多东西,但对一些特别专业的领域(比如医学、法律、金融)可能不会特别精通。通过微调,我们可以给模型“补课”,…...

使用NVM管理Node.js版本

🍁简介 在当前日常前端开发中,不同项目可能依赖于不同版本的Node.js。 一个项目可能需要Node.js 14,而另一个项目可能需要Node.js 18甚至更高版本。 直接安装和卸载不同版本的Node.js不仅繁琐,而且容易导致环境混乱。 Node Version Manager NVM 是一个命令行工具,允许在同…...

day12-Trae之一键换脸APP开发02

今日内容 1 Trae配置 # 1 之前就装过python解释器和JDK了 # 2 如果你电脑上没有任何编辑器,使用txt写代码,都可以可以运行pyton或java的项目# 3 IDE只是个快速写代码的软件,如果没装python解释器和JDK---》代码运行不了Trae Pycharm Androidstudio VScode 都叫编辑器 简称ID…...

day35大模型应用开发-模型微调

为什么需要微调? 在开始学习微调之前,大家首先还是要搞清楚为什么要微调?在什么情况下需要微调?让模型更懂“专业话”:通用模型就像一个“万事通”,它学过很多东西,但对一些特别专业的领域(比如医学、法律、金融)可能不会特别精通。通过微调,我们可以给模型“补课”,…...