牛客小白月赛23【题解】【非官方】

https://ac.nowcoder.com/acm/contest/4784


A、膜法匹配

状压枚举行,复杂度 过了,过的有点莫名其妙。还跑得贼快 15ms

B、阶乘

枚举质因子 p,求出那个质因子的个数之后。通过二分来check 个数是否足够就可以了。

考虑check的时候,(实际上就是某场div2的C),二分质因子 p 的倍数,假设我们现在选择 p*mid,我们不考虑每个数字含有的 p 的个数,我们考虑选择含有 因子的个数,显然这样很好求,就是 ,由于因子最多只有30+个,所以在check 的同时加一个特判就可以了。

C、完全图

完全图就是任意两个点都有边,所以 n-1 条边 多一个连通分量,然后 n-2 条边 多一个连通分量……

但是不太明白为啥出题人出这么大的范围,然后花了很长时间(打开了IDEA)上了一发 BigInteger

E、A+B问题

感觉这种题没啥意义,PHP一时爽

F、美丽的序列1

类似今年Camp day1 A(https://ac.nowcoder.com/acm/contest/3979/A),两个题相同在都是从n个范围内选出n个数字,然后算相邻对答案差生的贡献,都用到了期望的可加性

Camp的题是求逆序对的期望,所以只需要考虑相邻的逆序即可

小白赛F是求这个序列最少分成多少个连续不下降子段,所以在考虑相邻变成下降的同时,要乘上除了相邻两个线段的剩下线段的长度积,并且由于无论如何都有一个贡献,在最后加上所有数字任选的情况

然后考虑相邻两段,最多有6种情况,实际上就是一个或者多个等差数列,纸上推一下公式就可以了

G、树上求和

就是求每条边被用了多少次,实际上就是这条边的两端节点个数的乘积,所以在dfs求出sz之后,每条边的使用次数就是 sz*(n-sz),排个序即可。

H、奇怪的问题增加了

签到,从后往前遍历一下就可以了

I、寻找子串

枚举后缀,签到

J、最大的差

签到

全部评论
1 回复 分享
发布于 2020-03-23 16:40
点赞 回复 分享
发布于 2020-03-23 17:40
点赞 回复 分享
发布于 2020-03-26 20:08
这个A题复杂度真逆天啊orz
点赞 回复 分享
发布于 2020-03-27 15:23

相关推荐

10-15 10:57
已编辑
武昌理工学院 FPGA工程师
狠赚笔第一人:老哥学院本没实习还想拿13k学Java狠赚笔呢
点赞 评论 收藏
分享
评论
2
1
分享
牛客网
牛客企业服务