牛客
天涯-沧海
acmer
展开
-
2020上海高校程序设计竞赛暨第18届上海大学程序设计联赛夏季赛(同步赛) A 同源
这题可以等同于找三个互质的数xyz(可以假设x<=y<=c),x+y+z=n/k,xyz都不能为1,然后w=n/k,如果w是偶数,那x=2,yz拆成两个相邻奇数(如果(w-2)%2是奇数就拆成相差4的奇数),如果w是奇数,那x=3,其他两数yz和偶数同样处理,如果得到的z和y是3的倍数,就y-2,z+2最后得到的xyz如果有数等于1或者n%k不等于1都无解链接:https://ac.nowcoder.com/acm/contest/6871/A来源:牛客网时间限制:C/...原创 2020-08-05 17:46:55 · 1191 阅读 · 0 评论 -
(一般图最大匹配)2020牛客暑期多校训练营(第一场)I 1 or 2
用最大流是个假算法(网络流题解),虽然牛客没有重测,我还是来补一发带花树正解首先建图是这样的:每个条边拆成两个点x,y,x和y连边这条边连的两个点u,v,u拆成d[u]个点,分别和x连边,v拆成d[v]个点,分别和y连边然后如果是完全匹配,就输出yes解释一下为什么完全匹配就能yes如果是完全匹配,每个点都被匹配上了,这样就达到了题目要求的每个点必须连di条边的要求,但是,这是否能保证一条边上两个点,如果一点和该边相连,另一点也同时相连的效果呢?当然是可以的,比如对于建.原创 2020-07-16 17:42:15 · 427 阅读 · 0 评论 -
2020牛客暑期多校训练营(第二场)A All with Pairs
这题难点应该就是去重难想些吧首先把每个字符串的后缀都hash了存到map里,然后从每个字符串遍历,从前到后,第i个字符串的第j个点字符,我们得到前缀的hash值是x,ans[i][j]=mp[x],然后ans[i][next[j]]-ans[i][j],这就是在去重,next就是kmp的next数组,最后答案是就是具体描述下这个去重吧,应该会好理解点就比如现在只有一个字符串ababamp[a]=1;mp[ba]=1;mp[aba]=1;mp[baba]=1;mp[ababa]=..原创 2020-07-14 17:52:31 · 461 阅读 · 0 评论 -
(最大流) 2020牛客多校第一场 i 1 or 2
这i题我一直在想点和边进行建图,真tm的sb,这样根本没办法保证一条边和它的两个点都选上了,其实应该就点和点连边,每个点拆成i和i',源点和i连一条权值为di的边,i'和汇点连一条权值为di的边,对于m条边,u和v,u于v'建边,v与u'建边,这样每个点的流量都只能流到其他点,最大流就是让每个点都选了di条边,只要源点汇点流量等于di的和就是答案了链接:https://ac.nowcoder.com/acm/contest/5666/I来源:牛客网时间限制:C/C++ 1秒,其他语言2秒...原创 2020-07-12 17:48:58 · 1010 阅读 · 5 评论 -
(dp)吉林大学ACM集训队选拔赛(重现赛) b Subset of Five
补一下之前的一道简单dp题,转移就是dp[i][j]=max(dp[i][j],dp[i-1][(j-x+5)%5]+a[i]);要么不选这个数,要么选这个数和之前的dp[i-1][(j-x+5)%5]加到一起链接:https://ac.nowcoder.com/acm/contest/5944/B来源:牛客网"Today is another day! I'm five." With the fail of unit tests, XiaoYang tiredly lies on th...原创 2020-06-24 18:08:43 · 160 阅读 · 0 评论 -
(拓扑排序+bitset)吉林大学ACM集训队选拔赛(重现赛)C Strange Bulbs
这题一开始看的时候,肯定是要拓扑的,但是有一个问题,一个点的开关,会影响它所有的子节点,一个点的是否要开关,又是这所有影响到这点的父节点数量和的奇偶决定的,比方说1到2,1到3, 2到4, 3到4,如果直接纪录每个点父节点(包括自己)有多少开关了,那a[1]=1,a[2]=2,a[3]=2,那势必会使a[4]=a[2]+a[3]=4,这就错误了,应为1的影响被重复加了就如下图所以不能这么简单的加,而要纪录4这个点是具体被哪些点影响了,但我们又不能暴力遍历,所以一个更好点办法是bitse...原创 2020-06-14 12:49:15 · 421 阅读 · 0 评论 -
牛牛的幂运算
题目描述牛牛在做一道数学题,他发现自己不怎么会做,请你帮帮他求有多少a,b,c,d满足a^b = c^d, 1<=a,b,c,d<=n, 模 10^9+7输入描述:输入一个整数n (1 ≤ n ≤ 109)输出描述:输出一个整数示例1输入复制2输出复制6示例2输入复制100输出复制...原创 2019-05-29 21:49:10 · 877 阅读 · 0 评论 -
牛客挑战赛32 B 114514
给你一个长为n的序列定义一个序列下标的子集为先辈,当且仅当选出的这些下标对应的序列值的乘积为114514,而且因为只有一只野兽,所以有个要求是选出来的这些下标所对应的序列值最多有一个1请输出有多少先辈输入描述:第一行一个数表示n之后一行n个数表示这个序列n <= 229028,序列的值域在[0,1145141919]中输出描述:输出一行一个数表示答示例1...原创 2019-09-20 22:45:48 · 545 阅读 · 0 评论