摘要: 有T次询问,每次给出整数n,m,p,计算C(n+m,n)%p的值。输入保证p为质数。 1<=n,m,p<=1E5; 1<=T<=10 n很大,p为百万级以内的质数,并且需要多次求组合数时,一般用lucas定理来计算组合数:lucas(n,k,p) = lucas(n/p,k/p,p) * C(n%p 阅读全文
posted @ 2024-03-10 20:20 chenfy27 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 给出T次询问,每次给出n和m,求C(n,m)对998244353取模的结果。为了避免输出太多内容,只需要输出所有查询结果的异或和。 1<=T<=5E6; 0<=m<=n<=5E6 n为百万级、p为大质数,需要多次求组合数,一般先O(n)预处理出所有数的阶乘及其对应的乘法逆元,然后O(1)处理每次询问 阅读全文
posted @ 2024-03-10 20:14 chenfy27 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 有一张二维棋盘,骑士每次可以从(i,j)移到(i+1,j+2)或(i+2,j+1)。求骑士从位置(0,0)移到(X,Y)的路径方案数?结果对1E9+7取模。 1<=X,Y<=1E6 dp的时间复杂度为O(XY),会TLE,因此考虑数学方法。假设走法1用了A次,走法2用了B次,那么有A+2B=X,并且 阅读全文
posted @ 2024-03-10 15:46 chenfy27 阅读(3) 评论(0) 推荐(0) 编辑
摘要: cfy有n种花,每种各1朵,需要从中选出1种或多种来扎成花束,要求花的朵数不能是a或b,问可以制作多少种不同的花束?结果对1E9+7取模。 2<=n<=1E9; 1<=a<b<=min(n,2E5) 每朵花都有选与不选两种情况,去掉都不选的情况,共2^n-1种方案。然后再减掉选a种和选b种的情况,方 阅读全文
posted @ 2024-03-10 15:21 chenfy27 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 给定序列A[N],元素值各不相同,有Q个操作,格式如下: 1 x y: 在元素x后面插入元素y,保证插入时x唯一。 2 x: 将元素x从序列中删除,保证删除时x唯一。 输出所有操作完成后的序列。 1<=N,Q<=2E5; 1<=A[i]<=1E9; A[i]!=A[j] 用链表来快速插入和删除,另外 阅读全文
posted @ 2024-03-10 14:53 chenfy27 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 有A个红苹果,美味度分别为p[i];有B个青苹果,美味度分别为q[i];另外还有C个无色苹果,美味度分别为r[i],无色苹果在吃之前可以涂成红色或青色。现在要吃X个红苹果和Y个青苹果,求能吃到的最大美味度。 1<=X<=A<=1E5; 1<=Y<=B<=1E5; 1<=C<=1E5; 1<=p[i] 阅读全文
posted @ 2024-03-10 12:37 chenfy27 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 题面:给定数组A[n],问A中存在多少个下标x,满足A[x]不能整除数组中所有其他元素。 范围:1<=n<=2E5; 1<=A[i]<=1E6 思路:先计数,然后用类似质数筛的方式处理出整除关系,遍历一次统计结果。 #include <bits/stdc++.h> using namespace s 阅读全文
posted @ 2024-03-10 02:02 chenfy27 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 题面:cfy正在打体力为H的怪兽,cfy有n种咒语,第i种咒语可以造成A[i]点伤害,但需要花费B[i]点魔法,咒语使用次数不限,当怪兽体力小于等于0时死亡。求杀死怪兽需要的最少魔法。 范围:1<=H<=1E4; 1<=n<=1E3; 1<=A[i],B[i]<=1E4 思路:完全背包的变形,记dp 阅读全文
posted @ 2024-03-10 01:21 chenfy27 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 题面:给定正整数n和m,构造一个长度为n的正整数序列a[i],满足a[i]之和为m。求gcd({a[i]})的最大值。 范围:1<=n<=1E5; n<=m<=1E9 思路:设k为答案,由于k是a[i]的公约数,那么k也能被m整除,因此枚举m的约数判断是否可行。 #include <bits/std 阅读全文
posted @ 2024-03-10 00:20 chenfy27 阅读(4) 评论(0) 推荐(0) 编辑