摘要: https://www.luogu.com.cn/problem/CF582A 这道题的核心做法是从大到小来算; 因为gcd(a,b)<=min(a,b),所以最大的数一定是序列中的数,现在看第二大的数:也必须是序列中的,第三大的:如果我们把两个 gcd(x,k) 都从数表中剔除,那么可以认为 x, 阅读全文
posted @ 2025-10-18 15:19 曾翎一 阅读(5) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/CF632D 我们用lcm(a,b)>=max(a,b)来排除掉所有>m的a[i],然后我们像埃氏筛那样枚举每个a[i]的倍数,选取最多的那个 阅读全文
posted @ 2025-10-18 15:02 曾翎一 阅读(6) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/P2152 运用更相减除法,如果有偶数就约掉,一偶一奇就除2,两个奇就相减,要写高精除,高精减和cmp 阅读全文
posted @ 2025-10-18 14:49 曾翎一 阅读(3) 评论(0) 推荐(0)
摘要: 题目:https://www.luogu.com.cn/problem/CF757B 题解:注意到s的大小也为1e5以内,所以我们枚举每个s[i],对每个s[i]求因数j,g[j]++;求出最大的g[j]就是答案。 阅读全文
posted @ 2025-10-18 14:16 曾翎一 阅读(8) 评论(0) 推荐(0)
摘要: 这道题我本来是建立多层图然后跑dijkstra来解决,但是由于N=5000,所以会包空间导致RE或者MLE,注意到其实这道题是从1到n都来一遍,其实就可以考虑k-1和k的关系,k在k- 1的基础上面跑最短路,跑完了之后我们对比传送门的两个点到1的距离,这样它可以更新新的最短路。 #include<b 阅读全文
posted @ 2025-09-13 15:31 曾翎一 阅读(32) 评论(0) 推荐(0)
摘要: SPFA看入队次数,入队次数>n则说明一定有负环 #include<bits/stdc++.h> using namespace std; const int maxn=2005; const int maxm=20005; const long long inf=2147483647; int n 阅读全文
posted @ 2025-09-10 15:48 曾翎一 阅读(8) 评论(0) 推荐(0)