摘要: 当你要做数学计数的时候,如果这个数学计数你写式子算不出来,那多半是写dp来计数的。这道题可以想到是做以d为最大的被删除的数,如何去重是关键,我们可以算出kd的倍数个数再从中取个数-1,这个时候分块的意义就体现了 阅读全文
posted @ 2025-11-07 00:31 曾翎一 阅读(3) 评论(0) 推荐(0)
摘要: include include include int main() { constexpr int M = 20101009; int n, m; std::cin >> n >> m; if (n > m) std::swap(n, m); std::vector f(n + 1), vis(n 阅读全文
posted @ 2025-10-22 00:47 曾翎一 阅读(5) 评论(0) 推荐(0)
摘要: include include include include include using namespace std; // 快速幂算法:计算 (a^b) % mod long long fast_power(long long a, long long b, long long mod) { l 阅读全文
posted @ 2025-10-22 00:47 曾翎一 阅读(6) 评论(0) 推荐(0)
摘要: include include include include include using namespace std; // 快速幂算法:计算 (a^b) % mod long long fast_power(long long a, long long b, long long mod) { l 阅读全文
posted @ 2025-10-22 00:43 曾翎一 阅读(6) 评论(0) 推荐(0)
摘要: ![image](https://img2024.cnblogs.com/blog/3700806/202510/3700806-20251018214647163-1207945243.png) 阅读全文
posted @ 2025-10-18 21:47 曾翎一 阅读(5) 评论(0) 推荐(0)
摘要: 二位前缀和的巧妙运用 include<bits/stdc++.h> using namespace std; int T,k; vector<pair<int,int>> g; int num[2010][2010]; long long c[2010][2010]; int d[2010][201 阅读全文
posted @ 2025-10-18 16:32 曾翎一 阅读(3) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/CF687B 由exCRT知道,最终其实就是要求k是否|lcm(a),但是直接求lcm会溢出,方法:1、质因数分解,比较次数,2、取模lcm=lcm/gcd(lcm,c)*c)%=k; // 读入+lcm 计算(注意先除后乘)+取模 阅读全文
posted @ 2025-10-18 15:55 曾翎一 阅读(4) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/CF582A 这道题的核心做法是从大到小来算; 因为gcd(a,b)<=min(a,b),所以最大的数一定是序列中的数,现在看第二大的数:也必须是序列中的,第三大的:如果我们把两个 gcd(x,k) 都从数表中剔除,那么可以认为 x, 阅读全文
posted @ 2025-10-18 15:19 曾翎一 阅读(4) 评论(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 曾翎一 阅读(5) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/P2152 运用更相减除法,如果有偶数就约掉,一偶一奇就除2,两个奇就相减,要写高精除,高精减和cmp 阅读全文
posted @ 2025-10-18 14:49 曾翎一 阅读(2) 评论(0) 推荐(0)