- 博客(76)
- 收藏
- 关注
原创 同一 WiFi 下 SSH 连不上:Ping 通但 22 端口超时的排查实录
若正常,说明 VPN 地址可用;客户端需先连 VPN 才能走该路径。跨子网时路由器常放行 ICMP、拦截 TCP 22。目标是从客户端 SSH 登录 Linux。Linux 上还配置了 VPN 接口(如。登录路由器,关闭 AP/访客隔离,或放行。将 Windows 静态 IP 设为。,Windows 直连新地址 SSH。Linux 改用 DHCP 获取。典型结果:Ping 通,路由经。(避开服务端已占用地址),网关。从 Windows 执行。若 sshd 运行、监听。,虽属同一物理网络,但属于。
2026-06-24 23:35:27
422
原创 vcpkg 安装频繁报错?快把 PowerShell 升级到 PowerShell Core!
升级:用 winget、msi 或便携包安装 PowerShell Core。验证。使用:用pwsh启动新版,然后运行 vcpkg。这个小改动,能让你的 vcpkg 体验提升几个档次,再也不用为奇怪的脚本报错浪费一整天了。也欢迎在评论区留言讨论你遇到的 vcpkg 坑~
2026-05-11 22:26:37
476
原创 欧拉回路(一笔画)
欧拉回路:经过图中每条边恰好一次且闭合的回路。欧拉通路:经过每条边恰好一次但不闭合的路径(起点和终点不同)。欧拉图:具有欧拉回路的图称为欧拉图。
2026-05-07 23:00:26
235
原创 鸽笼原理(抽屉原理)
(也叫抽屉原理)是一个非常简单但极其有用的组合数学原理。它的核心思想是:如果把个物体放入个盒子中,那么至少有一个盒子里面含有物体。更一般地,如果把个物体放入个盒子,且,那么至少有一个盒子包含个物体。
2026-05-03 22:55:44
126
原创 中位数定理:到所有点的距离之和最小的点就是中位数
最小距离和 = (|1-3| + |2-3| + |3-3| + |10-3| + |100-3|) = 2+1+0+7+97 = 107。如果有三个人,中间那个人无论你选左边还是右边,只要离开中间点,就会让两个人的路程变远,一个人的路程变近,但净效果是变远。在 x 左侧的点越多,f(x) 的左侧导数负得越多,右侧导数正得越多。如果只有两个人,你选在他们之间的任何位置,总路程都是两点之间的距离,所以整个区间都是最优。中位数(2或3)取3 → 离差和 = 2+1+0+97=100,更小且更稳健。
2026-05-03 15:57:07
497
原创 AutoCAD 2024 启动崩溃:“AcBrandRes.dll 加载失败”及“Access Violation”问题排查与解决
打开卸载工具,选择所有 Autodesk 软件,然后删除它们。在 Windows 的“开始”按钮上搜索“卸载工具”。安装完后打开cad出现。
2026-04-30 17:02:05
480
原创 回声服务器项目
本项目通过实现一个功能完整的回声服务器,展示了网络编程的基本原理和实践方法。它不仅是学习 C++ 网络编程的良好起点,也为理解客户端-服务器架构提供了实际例子。通过解决项目开发过程中遇到的各种问题,我们可以更深入地理解网络编程的复杂性和解决方案,为后续更复杂的网络应用开发打下坚实基础。
2026-04-26 23:21:38
486
原创 论文降低AI率-姿势
目前就用的两个方法把AI率降下来。方法1最好用,方法2时灵时不灵。对于一些专门网站上的自动修改我用过一个从80%AI率降到73%,之后就用的上面两个方法降到了34%。还有其他的方法可以分享下,这AI率属实折磨。2. ai再次生成。将要修改的段落加入ai中并添加prompt如“如将修改的不是ai写的吗,用于论文。“将这句话修改为不是ai写,用于论文。1. 可以在叙述中加入对图表、公式、表格的显式引用。如“如图3-2所示”,因为AI生成文本通常倾向于平滑、连贯、缺乏显式引用标记的叙述。
2026-04-15 22:05:29
52
原创 二分之二段性
对于一个区间,如果存在一个分界点 k,使得:分界点左侧的所有元素都满足性质 P分界点右侧的所有元素都不满足性质 P(或者相反)那么我们就说这个问题具有二段性。经典的二分查找(如)正是基于此:对于条件,数组被自然划分为前段(< target)和后段(>= target(也就是二分不是一定要数组满足有序。
2026-04-13 17:29:33
322
原创 双指针之快慢指针
快慢指针(Fast and Slow Pointers)是一种非常巧妙的双指针技巧,在处理或的特定问题时,常能以的时间复杂度和的空间复杂度优雅解决。
2026-04-12 19:25:19
219
原创 AtCoder Beginner Contest 418(ABCDE)
先两两配对得到所有的向量,再通过位运算(x<<32)+y得到独一无二的数(注意化到最简与正负数的干扰),每次配对相同向量即可。而平行四边形会对重复计算,通过求出线段的中点(也用位运算得到的数存储)如果有两个线段中点相同,即为平行四边形要减去以此。先将0与1反过来看,可看出s_i与s_{i+1}的计算关系为异或,而异或满足交换律,因此对于一串01不管怎么算最后的结果都不变。,再遍历S,期间记录0为偶数的前缀数量和为奇数的前缀数量,每次减去当前以当前值为结尾的错误子串数量。在扑克桌上,有N种不同口味的茶包。
2025-08-10 17:28:12
763
原创 AtCoder Beginner Contest 416(ABCDE)
要理解floyd的最外层是作为中间点存在,在执行查询1时,将中间点固定为x,y;执行查询2时,先确定一个超级原点0,将所有x连在0上,此时中间点为x,0,此时两个机场间的距离会变为2t为了平衡将查询1的时间乘2即可;先对A与B取模,要让和最小那么A,B中和大于M的对数应该最大,以此减去更多的M。给你一个长度为 N 的字符串 S,它由 o 和 x 以及整数 L 和 R 组成。在满足以下所有条件的所有字符串 T 中,找出一个具有最多 o 的字符串。,其中所有元素都在 1 到 N 之间(包括 N),定义字符串。
2025-07-30 22:58:46
1144
原创 AtCoder Beginner Contest 412(ABCDEF)
得到相连顺序后到的cnt为最终情况下已经存在的边,ans=m-cnt+n-cnt。当第 i 块多米诺骨牌向右倒下时,如果紧邻第 i 块多米诺骨牌右侧的多米诺骨牌的大小不超过 2S_i,那么该多米诺骨牌也会向右倒下。A_n是非严格递增的,只有当n为质数幂时才会A_n>A_{n-1}。那么就是求(L,R】中质数幂的数量,这个可以用二段筛+记录每个值有几种质数构成实现。, N,第 i 条边是连接顶点 A_i 和 B_i 的无向边。他计划在第i天(1≤i≤N)完成A_i个任务,实际完成了B_i个任务。
2025-06-30 20:25:20
771
原创 AtCoder Beginner Contest 409(ABCDEF)
若x_i < 0,则在顶点i放置−x_i个电子;此外,对于图 G 的两个连通分量 A 和 B,令 V(A) 和 V(B) 分别表示 A 和 B 的顶点集。顶点 A 和 B 之间的距离 d(A,B) 定义为 d(A,B)=min{d(u,v)∣u∈V(A),v∈V(B)}。设 T_i 和 A_i 分别表示 T 和 A 的第 i 个(1≤i≤N)字符。要实现查询3,可使用并查集,实现查询1,2,使用小根堆存储每个点之间的距离,即可。对于图G中的顶点u和v,顶点u和v之间的距离d(u,v)定义为曼哈顿距离,即。
2025-06-08 21:52:22
989
原创 Codeforces Round 1028 (Div. 2)(ABCD)
那么先用最小的次数将一个值变为最终值(广度优先搜索),再通过这个值,与其他不同的值gcd,即可最快完成目标。即我们在遍历r中,记录p,q最大值的下标,再通过比较两者及其对应的qp值大小,可得到最大值。2的i次从二进制数来看2^i+2^j与其他同类型的比较,一般由i,j中的较大部分即可。由于 r 的元素非常大,你只需输出 r 的元素 modulo 998244353。水母的骑士有 c HP,而花花的骑士有 d HP。但由于水母很懒,你必须帮她算出 r 的元素。可以证明,水母总能实现她的目标。
2025-06-01 19:53:44
1121
原创 AtCoder Beginner Contest 407(ABCDEF)
序列A的两端是可以确定状态的,之后自前向后同时取两个放入大根堆,并从中取出最大的值,作为符号(。让 (i,j) 表示位于 从上往下数第 i 行的单元格(1≤i≤H)和从左往下数第 j 列的单元格(1≤j≤W)。s从后往前判断,当前数位为 i 时,说明到最终答案的状态要在加0后按i次,而之前的值都要也按 i 次。对于多米诺骨牌的摆放,其得分定义为写在未被任何多米诺骨牌覆盖的单元格中的所有整数的比特 XOR。最初 t 是空字符串。给你一个长度为 2N 的非负整数序列 A=(A 1 ,...,A 2N )。
2025-05-24 23:23:19
1400
原创 AtCoder Beginner Contest 406(ABCDEF)
先用ups,downs数组分别预处理存储局部最大值和局部最小值的下标,再使用滑动窗口的思想,当 i 遍历到满足条件2的点时,通过ups和downs得到满足条件3,4的最小下标 l 和最大下标r ,那么以i点为基础得到的蝶形数组数量为r-l+1。当删除某一行,使用cnt_y[y]对其内部记录,cnt_y[y]表达y列已被删除的垃圾数量,那么在求y列还有几个垃圾时,即为columns[y].size()-cnt_y[y]。在第 i 次运算中(1≤i≤N),他将当前显示的数字乘以一个正整数 A i。
2025-05-19 00:31:02
813
原创 AtCoder Beginner Contest 405(CDEF)
可以保证 d(i,j) 对于给定网格中的每个走廊单元都是可定义的;也就是说,每个走廊单元 (i,j) 至少有一个紧急出口可以通过走廊单元到达。给你一个 H 行 W 列的网格。让 (i,j) 表示从上往下第 i 行和从左往右第 j 列的单元格。从每个E出发进行广度搜索,并记录到达走廊的步数,如果更小则更新到该点步数和箭头。可使用前缀和快速得到区间和,在遍历 i 即可。atcoder前两题的题解就算了,应该也没人想看吧。
2025-05-10 23:03:17
690
原创 Codeforces Round 1023 (Div. 2)(ABCDF1)
2. 如果 x 不在 u->v的路径上,在 x 找最远点时经过u到v路径上的点y,从y点再次出发如果得到的最远点不为u/v。3.如果 x 不在 u->v的路径上,在 x 找最远点时不经过u到v路径上的点,由于是一棵树这两线必定有相联系的点,说明从联系点出发有更远的路径,就与u->v最远不符合。你的任务是补全缺失的部分,使 a 的最大子数组和∗ 恰好为 k,否则就报告不存在解法。1. 如果 x 在 u->v的路径上,那么x到的最远点必为u/v,那么再次dfs得到的必为u到v的路径。的值 来填充你不记得的值。
2025-05-07 01:14:22
1036
原创 AtCoder Beginner Contest 404(ABCDEG)
顶点编号为 1,2,...,N,边编号为 1,2,...,M。铃木先生喜欢 M 种动物,即动物 1,...,M。动物 i 可以在 K i 个动物园看到,即动物园 A i,1,...,A i,K i。有两个网格 S 和 T,每个网格有 N 行 N 列。每个碗 i(1≤i≤N-1)上都写有一个整数 C i,最初装有 A i 粒豆子。memo[i]:在点 i 到有豆的其他碗的最小操作数。一排有 N 个大碗,从左边开始依次编号为0,1,...,N-1。为 #,则 S 的单元格 (i,j) 为黑色。
2025-05-03 23:31:31
1371
原创 Codeforces Round 1022 (Div. 2)(ABCD)
这个任务对你来说似乎太简单了,因此你决定给莫里斯一个回礼,在所有这样的数组中构造一个元素之和最小的数组。num 对于被拆分的2的幂次数二进制有数位0为0情况,则可将该数与num都+1,否则num为2,找个数也+2。只要克隆体出现在另一个尚未按下的按钮前,无论它是被创建还是被移动,它都会立即按下该按钮。不考虑有权值相同点的情况下,当一个点值为局部最大值时,它是必定要被创建的,而不是的则可通过局部最大值的左右移动被合理按下。要让和足够小,可先将 x 拆成不同的2的幂次数,再对还要填的数进行添加。
2025-05-02 15:27:27
833
原创 不同版本C++ 函数内函数写法
C++11C++14C++20与在全局变量写函数的优点: 1. 直接捕获局部变量 2. 逻辑集中 3. 闭包隔离状态
2025-04-28 10:01:23
244
原创 Codeforces Round 1019 (Div. 2)(ABCDE)
如果存在一个数组 y1,y2,...,ym,且 y 的元素是不同的(换句话说,对于所有 1≤i<j≤m 的数组,yi≠yj),并且对于所有 1≤i≤m 的数组,xi 和 yi 的乘积是相同的(换句话说,对于所有 1≤i<j≤m 的数组,xi⋅yi=xj⋅yj),那么数组 x1,x2,...xm 就是优美的。对于迭代数为1时,排除非局部最小值,那么必定从最大的开始排除(最大的必定不构成局部最小值),那么对于迭代值为1的位置填的数就从大到小填满,而填的顺序如何构造呢?剩下的数给迭代值-1的位置。
2025-04-23 17:19:57
1013
原创 AtCoder Beginner Contest 400(ABCDE)
具体来说,如果 S i 的第 j 个字符(1≤i≤H,1≤j≤W)是 .,则(i,j) 单元是一条路;每个 好整数 的b必定可以是一个奇数,那么先从1开始通过遍历a,结束条件为2^a>N,其间使用二分求出b的最大值,可得到在a_i的情况下有种b是可用的(b要为奇数)。先预处理,先求出1e6内的质数,再求出这些质数能得到的值(<=1e12),在求组合中使用剪枝(两质数相乘>1e6不可行),否则超时。参考最短路的思路,使用堆和广度优先搜索,记录每个点的前踢数,如有更新点的前踢数放入堆中。的方法避免大数相乘。
2025-04-06 18:09:10
1184
原创 AtCoder Beginner Contest 399(ABCD)
记录每个值的两个位置,如果是当前点的首位,这判断当前点与相邻前面的点是否是符合条件的,这可以通过比较两点第二次出现的位置是否相距为1来判断。也就是说,求有多少个整数 i,使得 1≤i≤N S 的第 i 个字符 与 T 的第 i 个字符不同的。有一个长度为 2N 的序列 A=(A 1,A 2 ,...,A 2N )。设置一个数组维护每个人的分数与下标,以分数为关键字排序,使用滑动窗口相同分数的范围,进行操作。树是没有环的,因此在构造图的过程中构成环的边是多余的,可被删除的(判断环通过并查集)。
2025-03-30 00:17:40
1075
原创 Codeforces Round 1012 (Div. 2)(ABCD)
每个餐桌由四个单元格定义:(3x+1,3y+1), (3x+1,3y+2), (3x+2,3y+1), (3x+2,3y+2)其中 x,y 为非负整数。如果有多张桌子的距离相同,他们会选择 x 最小的单元格,如果仍然相同,他们会选择 y 最小的单元格。与有关比较的容器有map,set,priority_queue,sort的数组。当ti为1时,优先从小根堆取点,同时要考虑当前桌子比走过剩余的角距离小的可能,这点由上图也可看出。在此基础上找到n/3以上的素数p,以p,p-1,p+1,p-2,p+2,。
2025-03-23 22:56:44
1515
原创 AtCoder Beginner Contest 398(ABCDEF)
也就是说当最初的烟到s[ i ]时,之后的新烟是由s[ j : i ] = s[0 : i ]-s[0 : j]产生的。遍历所有步数 i ,判断当前是否存在s[ j : i ]为人所在的位置,并记录当前的前缀值 [0 : i ]。长为1 放一个 =。记录每个数的出现次数,并放入数组a中,将a降序排序,当下标为1的值大于等于2时可行,否则不可行。在这群人中对于满足“ 其余N-1个人的数没有与自身相同的 ”的人,找到最大的数并输出他的下标。记录出现两次的数的个数cnt2,和出现两个以上的数的个数cnt3。
2025-03-22 23:32:06
910
原创 AtCoder Beginner Contest 397(ABCDE)
前后缀分解,倒序遍历设立一个数组suffix,suffix[i]为[ i : n ]中A的不同整数数量。字符串 io 是没问题,无需改变的。那么删除这些没问题的后剩下都是要在前后插入的字符了,统计一下剩下字符串长度即可。且在d确定的情况下上式单调递增,可用二分判断在d确定下y是否存在。在此问题的约束条件下,可以证明通过插入适当数量的字符、 S 就能满足条件。当把 A 在一个位置分割成两个非空(连续)子数组时,求这两个子数组中不同整数的计数之和的最大值。如果这个整数对,输出这样一个整数对(x,y)。
2025-03-16 21:24:25
914
原创 AtCoder Beginner Contest 396(ABCDEF)
那么在k=0的基础上,当k=i时要找值为m-i的下标的数组change。change中第 i 个值,在这 i 个前面的值除去change中的都为逆序对 : chage[i] - 1 -i。想到异或是针对每个数的二进制数位的,也就是说每个数与它相连的数的相同数位变化是同时的,那么要让和最小就要让同一个联通块的每个二进制数位的0数量大于等于1的数量。在所有简单路径(不多次通过同一顶点的路径)中,从顶点 1 到顶点 N 的所有简单路径(不多次经过同一顶点的路径)中,求路径上边的标签的最小XOR。
2025-03-09 21:29:23
924
原创 字符串hash
将 pre_hash[l] 左移 (r-l) 位(即乘以 B^(r-l))从 pre_hash[r] 中减去这个值。通过预处理字符串,可将求出一个字符串的子串,并与其他字符串比较是否相同的,时间复杂度变为n(1)。
2025-03-03 12:03:43
405
原创 Codeforces Round 1007 (Div. 2)(ABCD1)
我们先遍历深度为i-1的一批节点,那么在之后的遍历中节点一定就到不了i-1以上深度的节点了,以此类推再遍历出i-2深度的节点,此时节点一定到不了i-2以上深度的节点了,一直推到深度为0,en点,记录到这结束后节点一定会在en点了。给定一个正整数 n,找出长度为 n 的完美排列,如果不存在,则打印-1。长度为 n 的排列 p 是完美的。,当n为偶数时满足,a[n+1]是可能与a[n]不同的,所以要当n为偶数时,要推到a[++n]。推几场,可知从第一场开始每过3场,第一场比赛的观众还是观众(即场1,4,7。
2025-03-02 22:22:58
1271
原创 Educational Codeforces Round 174 (Rated for Div. 2)(ABCD)
例如,[1,4,2,4,7] 和 [1,2,4,8] 很美,但 [1,2]、[2,2,4] 和 [1,3,5,3] 却不美。当k==2时,如果a[i]==2,则当前2与前面的1或2结尾数字匹配 dfs(i , k) += dfs(i-1 , 1)当k==3时,如果a[i]==3,则当前3与前面的2结尾数字匹配 dfs(i , k)+=dfs(i-1 , 2)你的任务是计算数组 a 的优美子序列的个数。例如,对于数组 [1,2,2,2,3,3,4,4,4],相等特征为 [0,1,0,0,0,0,1,1]。
2025-02-19 23:28:05
1641
原创 AtCoder Beginner Contest 393(ABCDEF)
这里,被称为连续1 当且仅当存在整数 l 和 r(1≤l≤r≤N),使得 S 的第 i 个字符为 1,当且仅当 l≤i≤r,否则为 0。在最后连续1的情况下,左边1与右边1的距离之差是固定的,要达到这种情况必然是去除了其内的0,之后不断向内缩1即可。fine sick 表示高桥没吃有毒牡蛎,青木吃了有病的牡蛎,则3号牡蛎有病毒。sick fine 表示高桥吃了有毒牡蛎,青木没吃有病的牡蛎,则2号牡蛎有病毒。记录每个数的倍数的数量,遍历以当前数为因数且当前数有K个及以上的倍数,更新倍数的答案。
2025-02-16 23:52:12
1069
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅