B|B - Average Gym - 101161B 组合数学
http://codeforces.com/gym/101161/attachments
今天被卡常了,其实是自己对组合数技巧研究的不够。
如果是n, m <= 1e5的,然后取模是质数,那么可以用费马小定理。
如果n, m都比较小,那么其实是直接杨辉三角。不用逆元那些。
这题的思路是,枚举每一一个ave,然后总和就是n * ave
【B|B - Average Gym - 101161B 组合数学】相当于方程x1 + x2 + .... + xn = n * ave中,在0 <= x[i] <= full的情况下,不同解的个数中,使得x[i] == ave的个数。每有一个x[i] == ave
ans++
首先x1 + x2 + ..... + xn = n * ave在0 <= x[i] <= full有多少个不同的解,可以容斥出来,这里就不说了,复杂度O(n)
可以看看这个,http://www.cnblogs.com/liuweimingcprogram/p/6091396.html
然后怎么统计有多少个ans
考虑每一个的贡献,因为每个人的贡献是独立的,
如果x[1] == ave,有多少种情况?就是x2 + x3 + ..... + xn = ave * n - ave的合法解的个数种。
x[2] == ave同理,所以ans += n * 合法总数。
就比如ave = 1, 序列1、1、1中,贡献是3,其中x1 = 1的时候,x2 = x3 = 1一种,然后x2 = 1, x1 = x3 = 1又是一种。
文章图片
文章图片
#include#include #include #include #include #include #include #include #include #include
View Code
转载于:https://www.cnblogs.com/liuweimingcprogram/p/7309139.html
推荐阅读
- Gym - 102058L (Repetitive Palindrome (回文串判断))
- Gym - 102058M (Coke Challenge(模拟))
- Gym - 102152
- 树链剖分|【Gym 102059A】Coloring Roads(树链剖分+单调栈)
- Gym 102152(CDZSC——2020寒假大一愉悦个人赛)
- B - Divples Gym - 102302B
- Gym 101350I - Mirrored String II ( Manacher马拉车算法 -- 最长回文子串 )
- Gym|Gym 2017.08.13
- 闲来无事的懒人-打包ipa
- 强化学习实战|强化学习实战 | 自定义Gym环境之井字棋