牛客
spnooyseed
冲破大学的束缚,内心与实力并肩高升
展开
-
Three States codeforces
废话 记录一下遇到的第二个01bfs问题,01bfs和bfs的区别在于路径权值只有0和1,这个时候就优先搞权值为0的边,就用双端队列deque存储,如果边权为0,在前面插入,否则的话在后面插入,比正常跑bfs速度快很多 题目链接 https://ac.nowcoder.com/acm/problem/111125 题面 The famous global economic crisis is approaching rapidly, so the states of Berman, Berance and原创 2020-07-23 10:18:43 · 139 阅读 · 0 评论 -
颓红警
事实证明,小可爱是最可爱的嘤! ——佚名 现在小可爱在颓游戏,但是他遇到了一个问题: 小可爱率领的部队现在面对的是敌军在这一地区的驻军,敌国战争机器的运作很大程度上依赖指挥,所以敌军内部是严明分级的,就是说,全部敌军可以看作一棵树,每只敌军部队(树上每个节点)有其战斗力。你可以对任意敌军部队发动进攻,小可爱的部队有战斗力p,意味着他的每次进攻将使得被进攻的这支部队的战斗力减少p,对上级指挥系统的打击同时会影响其下级部队。具体来说,当他对点i发动进攻,部队i的战力减少p的同时,对于其子树内点j,部队j的战力.原创 2020-07-22 19:14:11 · 187 阅读 · 0 评论 -
2020牛客多校训练第三场 部分
L 、 Problem L is the Only Lovely Problem #include <iostream> #include <cstdio> #include <algorithm> #include <unordered_map> #include <vector> #include <map> #include <list> #include <queue> #include <cstr原创 2020-07-20 20:26:09 · 230 阅读 · 0 评论 -
2020牛客多校训练第四场 部分
B、Basic Gcd Problem 此题wa了16次,恶心的我不行 可以发现当前f[x] 肯定是c的幂次,那么就看x最大时c的多少幂次了。再看x和i的gcd,也就相当于x的约数 从上面看出规律,x如果要是最大,会从它的约数里面挑出最大的y,那么这个y也想最大,所以他也会从它的约数里面挑出z x=k∗y=k∗(p∗z)x = k * y = k * (p * z)x=k∗y=k∗(p∗z) 所以也就是最长的上升的,任意两个数都是倍数关系的序列例如1,2,4,8,32,但是发现,这个不需要可以的去求最长了原创 2020-07-20 19:57:41 · 295 阅读 · 0 评论 -
2020年牛客多校训练第二场 部分
2020牛客多校训练第二场 出题数 2 — D题(真水题) 和 F题(滑动窗口) D、Duration #include <iostream> #include <cstdio> #include <algorithm> #include <unordered_map> #include <vector> #include <map> #include <list> #include <queue> #incl原创 2020-07-17 22:19:45 · 207 阅读 · 0 评论 -
牛牛凉衣服
https://ac.nowcoder.com/acm/contest/6220/C 牛牛有n件带水的衣服,干燥衣服有两种方式。 一、是用烘干机,可以每分钟烤干衣服的k滴水。 二、是自然烘干,每分钟衣服会自然烘干1滴水。 烘干机比较小,每次只能放进一件衣服。 注意,使用烘干机的时候,其他衣服仍然可以保持自然烘干状态,现在牛牛想知道最少要多少时间可以把衣服全烘干。 本来想的贪心,代码如下, class Solution { public: /** * 计算最少要多少时间可以把所有原创 2020-07-17 13:44:17 · 152 阅读 · 0 评论 -
D.树上求和
D.树上求和 给你一棵根为1的有N个节点的树,以及Q次操作。 每次操作诸如: 1 x y:将节点x所在的子树的所有节点的权值加上y 2 x:询问x所在子树的所有节点的权值的平方和,答案模23333后输出 做法倒是好想(但是尽量用结构体数组,不然不好写,原本没有结构体找bug好久,然后又改写的),假设一个点原本是x , 然后加上y , 变大了y * y + 2 * x * y,将一个子树看出dfs序就是一段区间, 那么就是sum += y * y * len + 2 * res * x , len是区间长度,原创 2020-07-14 23:30:28 · 232 阅读 · 0 评论 -
CF - 1139D - Steps to One
此题学到一招,就是将概率dp转化为DAG图 考虑概率f[],设f[i]表示当前数组的gcd为i是走向gcd为1的期望步数,因为每次可以选择一个数(1 , m) ,添加到结尾,所以相当于每次从当前x点走向gcd(x , k) , 所以从每个点走,都有m条路径,,最后加一个虚点, 连接第一次选择的数,所以答案也就相当于从虚点走向1,只要求从虚点走向第一次选择的点就可, 答案: ans=1+∑1mf[i]mans = 1 + \frac{\sum_{1}^{m}{f[i]}}{m}ans=1+m∑1mf[i]原创 2020-07-12 00:02:04 · 117 阅读 · 0 评论 -
Tree-换根dp
https://ac.nowcoder.com/acm/contest/6226/C 、 修修去年种下了一棵树,现在它已经有n个结点了。 修修非常擅长数数,他很快就数出了包含每个点的连通点集的数量。 澜澜也想知道答案,但他不会数数,于是他把问题交给了你。 换根dp 第一遍dfs , 从下到上算贡献 :对于样例中点1的情况,可以发现上述红色框里的,如果在4的子树里, 5 和 6两个点可选可不选 , 一共2 * 2 中情况 , 如果以dp[u] 表示u节点被选中的时候,其字数内选中情况为 dp[u] *=原创 2020-07-07 23:57:26 · 191 阅读 · 0 评论 -
牛客算法周周练13 B - 病毒感染 换根dp
https://ac.nowcoder.com/acm/contest/6173/B 有一天clccle和rqy走在某个国家的街头上,机智的rqy却发现周围的行人不太对劲,他们嘴里念念有词,说着"sqn tql!",一边漫无目的的行走,clccle也发现了这一点,却惊讶的发觉这种奇怪的病毒会向周围的城市,最终会感染整个国家,因为网络已经崩溃,所以她们忘记了自己所在的城市,她们唯一知道的是这种病毒是从当前她们所在的城市开始传播的,并且这个国家的所有城市到这个城市的距离和最小(所有道路的距离都为1),现在给定聪原创 2020-06-30 22:18:17 · 268 阅读 · 0 评论 -
多源对多源最短路径
https://ac.nowcoder.com/acm/contest/6116/B 魔方国有n座城市,编号为1\sim n1∼n。城市之间通过n-1条无向道路连接,形成一个树形结构。 在若干年之后,其中p座城市发展成了大都会,道路的数量也增加到了m条。 大都会之间经常有贸易往来,因此,对于每座大都会,请你求出它到离它最近的其它大都会的距离。 蒟蒻第一次见多源对多源最短路,没想到是这种处理方式。 第一步就是按照正常加一个虚点连接所有的大都会,距离为0然后跑一边dijkstra , 同时记录当前这个点距离哪原创 2020-06-25 13:18:11 · 507 阅读 · 0 评论 -
K Dress as women
https://ac.nowcoder.com/acm/contest/5944/K One day, zyh and fzj are playing a game called Bejeweled, and they have promised the loser would dress as women. The rules are as follows, in a two-dimensional plane, each time one can remove one or multiple colli原创 2020-06-17 11:51:36 · 174 阅读 · 0 评论 -
富豪凯匹配串
链接:https://ac.nowcoder.com/acm/contest/1114/C 来源:牛客网 题目描述 有n个长度为m的文本串,每个串只含有’0’和’1’。接下来有Q次询问,每次给出一个长度为m的字符串,且只含有’0’,‘1’和’’。如10_1_1。下划线可以匹配’0’或’1’。即10_1_1可以匹配101111,101101,100111,100101四种串。每次询问求出n个文本串中...原创 2019-12-06 18:37:33 · 95 阅读 · 0 评论