该文被密码保护。 阅读全文
摘要:
day 0 9:30左右拿到手机,大巴上颓颓颓,然后到车站了,正常吃了个开封菜就大家聚一块颓等火车了。 上了火车有点烦躁,听了会旺仔小乔的歌(她声音是真好听啊),然后颓颓颓,睡睡睡,再看会风景,就到了 住的还是首旅京伦,还是和我们的wpc先生一个屋,回去呆了会就下楼吃饭了,由于太饿,我俩还点了个外卖 阅读全文
摘要:
upd on 2024.10.14 增加了多步容斥的原因 题目就是让你找出一组数,使其乘积是给出的质数的倍数,问有多少组这样的数 因为它是质数,一开始考虑单独求解,用质因子含一个质数的乘积减含两个数的加上含三个数的。。。然后就发现所有组合 都要算一遍,复杂的 \(2^k-1\) (\(k\) 为质数 阅读全文
摘要:
A. 小 Z 的手套(gloves) 明现的二分,我们先排序,假定 \(a\) 数组个数少,我们就对每一个 \(a_i\) 找一个 \(b_i\) 使其差不超过二分的值,然后 贪心来讲,肯定找相差最大的那组但差不超过二分值的那个数最优,且先找比他小的那组(因为排过序了),然后套个 \(multise 阅读全文
摘要:
A. 好数(number) 很容易想到 \(n^3\) 枚举两个,看第三个是否出现,扩展一下,枚举一个,看剩下需要的和是否出现过,提前处理出两两的和 和最早能合出这个数的位置,复杂的 \(O(n^2)\) 点击查看代码 #include<bits/stdc++.h> const int maxn=5 阅读全文
摘要:
A. 02表示法 对要求的数二进制拆分,每一位递归求解,大于2就继续拆,是1返回 \(2(0)\) ,是2返回 \(2\),由于外层的数比较大,所以 要写一个高精除低精 点击查看代码 #include<bits/stdc++.h> #define int long long const int ma 阅读全文
摘要:
A. 欧几里得的噩梦 线性基,不会,咕咕咕 B. 清扫 赛时想到要分为两种操作了,也想到要把剩余未分配石头上传处理了,但是没想清楚操作之间的关系,冲着一堆样例的结论 就开始写分讨了,思路不是很清晰,然后因为绑包。。。似的很惨 对于一个节点,我们把它直接儿子当作叶子即可,上面的信息是其子树分配后需要处 阅读全文
摘要:
A. 五彩斑斓 没办法,不会统计四个点相同的,赛时没想到,写了一个神秘算法骗了80 考虑倒着计算,总子矩阵有 \(\frac{n(n+1)*m(m+1)}{4}\) 个,减去四个角相同的矩阵数量就是答案,枚举矩阵的上下边界两条线 再枚举每一列,会有两个交点,统计每种颜色的上下交点颜色一样的个数,就可 阅读全文
摘要:
A. 挤压 拆位算贡献,一个数二进制表示平方为 \(\sum_{i,j}s_i*s_j*2^{i+j}\) ,单独算每一项的贡献,枚举 \(i,j\),只有当这两位都为1时 结果才是1,所以我们要找异或后这两位都是1的方案数,这里需要 \(dp\) 用 \(f_{i,j,k}\) 表示前 \(i\) 阅读全文
摘要:
这次状态不是很好,冲着T1磕了4个小时,后仨题看都没看。。。 A. median 去他丫的容斥,考虑排序,一个数作为中位数的方案数就是他左边有俩不同类型的数和右面有俩不同类型的数的总和 枚举哪些类型左边哪些右边,对每一位计算贡献就可以了,要提前预处理出来个数。 (有没有好心人看看我代码哪多乘了个4, 阅读全文
摘要:
A. 一般图最小匹配 \(m\) 小于 \(\frac{n}{2}\) 所以对原数组排序后做差分,差分后的数不能选相邻的,设 \(f_{i,j,0/1}\) 表示前 \(i\) 个,选了 \(j\) 个,第 \(i\) 个选没选 直接 \(dp\) 求最小值就行 点击查看代码 #include<bi 阅读全文