chenfy27的刷题记录

导航

上一页 1 2 3 4 5 6 7 8 9 ··· 17 下一页

2024年10月16日 #

模板-并查集DSU

摘要: 版本1:路径压缩。 struct DSU { std::vector<int> fa; void init(int n) { fa.resize(n + 1); std::iota(fa.begin(), fa.end(), 0); } int leader(int x) { while (x != 阅读全文

posted @ 2024-10-16 12:40 chenfy27 阅读(38) 评论(0) 推荐(0)

模板-组合数comb

摘要: 使用前需要初始化,执行一次comb.init(n),n为C(n,m)中最大的n。初始化时间复杂度为O(n),后续每次求comb(n,m)时间复杂度为O(1)。 std::vector<mint> fac, ifac; struct Comb { void init(int n) { fac.assi 阅读全文

posted @ 2024-10-16 12:37 chenfy27 阅读(40) 评论(0) 推荐(0)

模板-自动取模整型mint

摘要: 输入为int64类型,底层用int64表示,每次运算后自动取模。 template<int MOD> struct MInt { i64 x; int norm(i64 u) const {u%=MOD; if(u<0) u+=MOD; return u;} MInt(i64 v=0):x(norm 阅读全文

posted @ 2024-10-16 12:33 chenfy27 阅读(30) 评论(0) 推荐(0)

2024年10月10日 #

abc350E Toward 0

摘要: 给定整数N,每次可以选择支付X元将其除以A并向下取整,或者支付Y元掷筛子,假设点数为i,则将其除以i并向下取整,筛子每次都是等概率出现1-6。问将N变成0需要的最小花费的期望。 1<=N<=1E18; 2<=A<=6; 1<=X,Y<=1E9 分析:当前的期望是所有后续情况期望的概率加权。如果选择方 阅读全文

posted @ 2024-10-10 22:37 chenfy27 阅读(13) 评论(0) 推荐(0)

2024年10月9日 #

abc174F Range Set Query

摘要: 给定数组A[N],有Q个询问,每个询问给出l[i]和r[i],问区间[l[i],r[i]]内有多少个不同的数? 1<=N,Q<=5E5; 1<=A[i]<=N; 1<=l[i]<=r[i]<=N 分析:对询问按右端点从小到大排序,然后从左到右依次处理每个A[i],将下标i的位置置为1,如果前面出现过 阅读全文

posted @ 2024-10-09 19:56 chenfy27 阅读(17) 评论(0) 推荐(0)

2024年10月8日 #

abc347E Set Add Query

摘要: 有数组A[N],初始时元素都为0,另外还有初始为空的集合S。依次处理以下Q组查询:给出整数x[i],如果S包含x[i],则从S中移除x[i],否则将x[i]加入S,记此时S的大小为|S|,把|S|加到集合中的每个元素i对应的A[i]中。求最终A[i]是多少。 1<=N,Q<=2E5; 1<=x[i] 阅读全文

posted @ 2024-10-08 21:50 chenfy27 阅读(13) 评论(0) 推荐(0)

abc351F Double Sum

摘要: 给定数组A[N],对所有1<=i<j<=N,计算max(A[j]-A[i],0)之和。 2<=N<=4E5; 0<=A[i]<=1E8 分析:从左到后依次处理,用平衡树维护左侧A[i],对于A[j],只需要统计值小于A[j]的那些A[i]即可,可以合并求和过程转化为前缀和。 #include <bi 阅读全文

posted @ 2024-10-08 20:13 chenfy27 阅读(13) 评论(0) 推荐(0)

abc356E Max/Min

摘要: 给定数组A[N],对所有1<=i<j<=N,计算max(A[i],A[j])/min(A[i],A[j])之和,除法为向下取整。 2<=N<=2E5; 1<=A[i]<=1E6 分析:排序不影响结果,先对A[N]排序和计数,然后枚举每个数作为除数时产生的商,注意数可以重复,因此重复的数要单独统计,以 阅读全文

posted @ 2024-10-08 20:08 chenfy27 阅读(16) 评论(0) 推荐(0)

2024年10月7日 #

abc374E Sensor Optimization Dilemma 2

摘要: 生产某种产品有N道工序,对于工序i,有S[i]和T[i]两类机器可供选择,机器S[i]单价为P[i],每台每天能处理A[i]件;机器T[i]单价为Q[i],每台每天能处理B[i]件。在不超预算X的前提下,每天最多能生产多少件产品? 1<=N<=100; 1<=A[i],B[i]<=100; 1<=P 阅读全文

posted @ 2024-10-07 22:08 chenfy27 阅读(19) 评论(0) 推荐(0)

51nod1548 欧姆诺姆和糖果

摘要: 有红蓝两种糖果,红色糖果每颗重wr克,甜度为hr;蓝色糖果每颗重wb克,甜度为hb;有容量为C克的盒子,求能装下的最大甜度。 1<=C,hr,hb,wr,wb<=1E9 分析:记S=lcm(wr,wb),那么对于S克容量,可以装S/wr颗蓝色糖果,也可以装S/wb颗红色糖果,甜度分别为S*hb/wr 阅读全文

posted @ 2024-10-07 22:00 chenfy27 阅读(13) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 ··· 17 下一页