牛客多校
GC_shk
这个作者很懒,什么都没留下…
展开
-
2020牛客暑期多校训练营(第五场)C Easy
2020牛客暑期多校训练营(第五场)C Easy 题意 C Easy 有两个长度为k的序列A,B满足∑i=1kai=N\sum_{i=1}^ka_i=N∑i=1kai=N,∑i=1kbi=M\sum_{i=1}^kb_i=M∑i=1kbi=M 求P=∏i=1kmin(ai,bi)P=\prod_{i=1}^kmin(a_i,b_i)P=∏i=1kmin(ai,bi)的种类。 题解 设n<mn<mn<m,满足条件的a和b的方案构造的生成函数如下 (x+x2…+…+xn)k(y1原创 2020-07-27 01:08:37 · 578 阅读 · 2 评论 -
2020牛客暑期多校训练营(第四场)I Investigating Legions
2020牛客暑期多校训练营(第四场)I Investigating Legions 题意 I Investigating Legions 有N个点(30-300)和M(1~N/30)个团,每个点仅属于 一个团(等概率在0~M-1选择一个整数作为它的团)。 • 有一个常数 S(20~100)。按以下的方式生成 01 矩阵 a: 如果 i 和 j 属于同一个团,a[i][j]=1,否则a[i][j]=0。同时该 值有 1/S 的概率被翻转。 • 给出 N 和 S 和 a(M 不给出),要还原每个点属于的团。 题原创 2020-07-22 10:24:38 · 227 阅读 · 0 评论 -
2020牛客暑期多校训练营(第三场)F Two Matchings
2020牛客暑期多校训练营(第三场)F Two Matchings 题意 F Two Matchings 给出a,b,求c / d - e / f = a / b的一个可行解。且d, f < b 做法 如果gcd(a, b)> 1, 一定有解如下 c = a / gcd(a,b) + 1, d = f = b / gcd(a,b),e = 1。 如果b = 1或者为素数,则一定无解。 如果b 只含有一个素因数,比如27 = 3^3,也一定无解。 b 拆分成 d * f, 所以c * f - d原创 2020-07-22 09:13:36 · 136 阅读 · 0 评论 -
2020牛客暑期多校训练营(第三场) C Operation Love
2020牛客暑期多校训练营(第三场) C Operation Love 题面 C Operation Love 给出20个点表示一个手掌,要判断是左手还是右手。 解决方法 如图所示,最底下那条边长度为9,且其他所有边都在其一侧,遍历每个点对,判断长度为9的边其他点是否在同一侧,这里可以用叉积解决。找到底边后,通过左右两点坐标做垂线,找到左右两边的长度。然后课可以根据叉积的正负,两边的长度和对应直线的位置(ax+c的c)来判断左右手。 ac代码 #include<bits/stdc++.h> #原创 2020-07-22 08:53:09 · 120 阅读 · 0 评论