随笔分类 - 组合数学
摘要:HDU5765 Bonds (高维前缀和) 题意:$n(n include include include include include define IOS ios::sync_with_stdio(false) define pb push_back define Pii pair defin
阅读全文
摘要:Codeforces 1054D Changing Array 做法:给定一个序列,每个数可以把在2进制k位下取反,也可以不变,在改变后,这个序列异或和不为0的区间的个数。考虑如何求出尽可能少的异或为0的序列,对序列求前缀之后,就相当与问这个前缀的序列中,有多少对的值相同,注意还有开始的0。那么对于
阅读全文
摘要:Codeforces Round 519 by Botan Investments A. Elections c++ include typedef long long ll; const int N = 3e5 + 7; const int mod = 1e9 + 7; using namespa
阅读全文
摘要:HDU5794 A Simple Chess 做法:首先的想法就是用总方案数减去,经过过障碍的方案数A。第一个思路就是容斥,但是显然不符合数据规模。另一个思路就是将障碍物从左上到右下排序,dp[i] 表示不经过前i 1个障碍,到达第i个障碍的方案数。这里定义cal(a,b) 表示从a到b,无障碍情况
阅读全文
摘要:HDU6038 Function 做法: 展开后有,f(i)=bf(ai)=bbf(aai)=...=bb..bf(i),可以发现当 ai 所在的循环节中确定一个时,整个循环都确定了,根据这个式子还可以发现,对于一个ai所
阅读全文
摘要:牛客网暑期ACM多校训练营(第九场) A. Circulant Matrix 做法:看到下标 xor 这种情况就想 FWT,可是半天没思路,于是放弃了。。其实这个 n 疯狂暗示啊。设未知数向量为 x,列一下方程组就可以发现有: $$b[k] = \sum_{i \oplus j= k
阅读全文
摘要:Gym100187B n:表示字符的种类; ai:表示单词i的个数; Len:表示串的长度; 先考虑一种单词ai放在一个固定位置p对答案的贡献: 整一个串的全排类为:P=Len!a1!a2!...an! 固定ai的排列为:$$P_i =
阅读全文
摘要:牛客网暑期ACM多校训练营(第五场) A. gpa 二分答案,然后就转化为是否满足 ∑s[i]c[i]∑s[i]≥D, ∑s[i]c[i]≥∑s[i]D, \sum s "i" ≥ 0 显然科目越少gpa越高,于是去掉最小的k个
阅读全文
摘要:概率期望学习笔记 POJ3869 题意:两个人转左轮手枪,朝自己打,枪里保证至少有一个空的,你的对手上一轮活下来了,现在到你了,问重新转左轮和直接打,哪个概率高。 做法:考虑00,10,两种串,即可计算不转时,下一个为空的概率。重新转的概率,就是这个手枪里所有空的位置比所有的口的个数。注意串是循环的
阅读全文
摘要:牛客网暑期ACM多校训练营(第三场) A. PACM Team 01背包,输出方案,用bool存每种状态下用的哪一个物品,卡内存。官方题解上,说用char或者short就行了。还有一种做法是把用的物品压成一个int。 c++ include include define rep(i,a,b) for
阅读全文
摘要:牛客网暑期ACM多校训练营(第一场) A. Monotonic Matrix 考虑0和1的分界线,1和2的分界线,发现问题可以转化为两条不互相穿过的路径的方案数(可重叠),题解的做法就是把一条路径斜着平移,然后就转化为不可重叠了。现在考虑,如何计算从(0,0)道(n,m)不相交不可重叠的方案数,一条
阅读全文
摘要:Codeforces Round 497 (Div. 1) A. Reorder the Array 先满足数值较小的位置,每次找恰好大于这个值的一个值即可。 B. Pave the Parallelepiped 比赛时,只推出了几种特殊情况的规律。下来学习了一下,将 A, B, C 的所有约数分类
阅读全文
摘要:Wannafly挑战赛19 A. 队列Q 需要支持把一个元素移到队首,把一个元素移到队尾,移到队首就直接放到队首前面那个位置,原位置标为0,队尾同理。 C. 多彩的树 预处理每种颜色状态下的路径数,但是这次统计的包含这个状态的所有子状态。因此考虑容斥,当当前状态的颜色数为奇数时,加奇数,减偶数,当为
阅读全文
摘要:Codeforces Round 491 (Div. 2) A. If at first you don't succeed... 按题意判断 B. Getting an A 排序之后,暴力修改加check...被fst。。。凉透 c++ include define rep(i,a,b) for(
阅读全文
摘要:Wannafly挑战赛18 A. 序列 先考虑暴力,相邻两个树之间乘上给定的三种数,递推出下一个位置填什么,然后再check一下,最后一位是否为1即可。这样时间显然不行,但是给我们一种思路,就是中间的转换关系,确定唯一一个序列。现在的目标是让最后一位出现1,可以如果不管1,由 2和0.5取凑出1需要
阅读全文
摘要:Codeforces Round 489 (Div. 2) A. Nastya and an Array B. Nastya Studies Informatics gcd(a,b) = x, lcm(a,b) = y , 即 $gcd(\frac {a}{x},\frac {b}{x}) =
阅读全文
摘要:A. 贝壳找房函数最值 常规贪心推式子。按(a-1)/b排序 D. 贝壳找房魔法师顾问 情况1:两边都不可变。对比是否相等,直接判断; 情况2:两边都变。对于每个联通块找一颗生成树最优; 情况3:一边可变,另一边固定。对每个弱联通分量,如果是DAG,显然可以按拓扑序连成链即可保证连接关系,如果有环就
阅读全文
摘要:A. 礼物 枚举一元奥利奥的个数,计算2元的个数,现在需要解决从N种物品中,取x个的方法数,把N个种类看作N个盒子,奥利奥看作球,就是经典球盒模型了。 B. 麻婆豆腐 设集合内最后一个硬为1的概率是x,其余元素异或起来是1的概率为p,则有x*(1-p) + p*(1-x) = 0.5, 可解得一个为
阅读全文
摘要:剩下的不太会就没接着打了,没有注意到比赛截至时间,好像提前了几分钟公开题解。意识到的时候已经来不及了。。。抱歉。。。 —————————————————————————————————————— A.走格子 按题意模拟即可 B.求值2 组合数第n层的平方和=C(2*n,n),枚举求和即可 C.简单环
阅读全文
摘要:B.RGB Coloring 绿色可以看作拿红和蓝都涂了,那么只需要满足A*a + B*b = K && 0 ≤ a,b ≤ n,答案加上C(n,a)*C(n,b) C.Interval Game 贪心,尽量不断走重复的路,左右来回每次尽量到最两边,先左后右,先右后左,取个最优解。
阅读全文