12 2019 档案

摘要:tarjan缩点,枚举子集。 首先avg即平均值是可以直接求出来的,我们假设第i个盒子给出去a,那么平衡需要的是,avg sumi+a,我们把所有数字开一个map保存下来,如果有该数字,连一条有向边,从a到avg sumi+a。 可以看到,因为题目说了unique ,所以一个点的出度是固定的,即1。 阅读全文
posted @ 2019-12-22 23:43 LORDXX 阅读(198) 评论(0) 推荐(0)
摘要:A题:暴力然后排序用string比较就好。 B题:找规律?可能emm 首先第i次加i,记前缀和为sum,要两个数字相等,至少sum =两个数字的差。 我们进一步思考,当sum!=差的时候,记sum dis=x。 如果x是偶数,x/=2,然后该数字x一定是出现在sum里面的数字,我们将x分给大的数字, 阅读全文
posted @ 2019-12-21 19:05 LORDXX 阅读(183) 评论(0) 推荐(0)
摘要:A题 水题,贪心即可。 D题 还是暴力。 相当于判断,通过代价为零的边,能有多少个连通块,答案为连通块的数目减一。 因为是个完全图,每一个点必然和其他所有点有边,我们把能通过0的边连在一起的点缩成一块。每一个块之间,将必然会使用代价为1的边相连,所以代价为快数 1。 考虑暴力dfs,开vis数组,保 阅读全文
posted @ 2019-12-21 18:24 LORDXX 阅读(104) 评论(0) 推荐(0)
摘要:首先构造trie图。 我们明确一点的是,给出trie图,那么所有点的转移方式都是唯一可以确定的。即使是没有这个字符,他也会指向根节点。 我们根据离散数学的知识可以知道。计算有向图的邻接矩阵,然后k次方,就能够计算出从某一个点到另一个点,有多少条长度为k的路径。 故,我们构造出来trie图,拿出该图的 阅读全文
posted @ 2019-12-20 12:10 LORDXX 阅读(249) 评论(0) 推荐(1)
摘要:A题:找出有多少个每一个位置上数字都相同的数。 模拟即可。 B题 题意:每一次可以使得相等的数字除以二,问最少次操作使得数组全部变成奇数。 暴力模拟,开一个set,每一次贪心用最大的来除以2,再暴力合并进入set。 阅读全文
posted @ 2019-12-17 09:18 LORDXX 阅读(143) 评论(0) 推荐(0)
摘要:容斥 dp 题意:给出()序列和?,?可以变成‘(’或者‘)’,问如果是贪心匹配可以操作任意次去掉任意括号,求所有情况深度的和。 分情况讨论。dp[i][j]表示i~j这段所有情况的深度和。 1.左括号==')‘,那么dp[i][j]=dp[i+1][j] 2.右括号=='(',那么dp[i][j] 阅读全文
posted @ 2019-12-15 20:29 LORDXX 阅读(115) 评论(0) 推荐(0)
摘要:A题: B题:模拟就完事儿 C题:乱搞前缀 cpp include include include include include include include include include include include include // include include pragma GC 阅读全文
posted @ 2019-12-14 20:25 LORDXX 阅读(81) 评论(0) 推荐(0)
摘要:就写了道水题,溜了溜了,队友带我飞。补题了再写题解好了。这水题我连代码都懒得贴了。 阅读全文
posted @ 2019-12-08 18:09 LORDXX 阅读(328) 评论(0) 推荐(0)
摘要:A:题意:给一串字符串以abc和?组成,要求将?替换成abc,使得这个字符串相邻两个字母不等。 暴力模拟。 阅读全文
posted @ 2019-12-08 10:47 LORDXX 阅读(178) 评论(0) 推荐(0)
摘要:A:题意:给一串数列,两个相等能够合并,问是否能凑成2048 从211开始,往下遍历,每一次如果有数字,那么 =2,看最后加和是否大于等于需要的即可 B:题意:给一个棋盘,放象棋 的马,问最大互相攻击。 dfs即可。 C:二分一下即可。cf老套路了。 D:dp 题意:给一串序列a,要使得a序列相邻两 阅读全文
posted @ 2019-12-08 10:36 LORDXX 阅读(171) 评论(0) 推荐(0)
摘要:后缀数组加上二分。(其实单调栈也行,二分也是因为其单调性) 首先,我们如果利用two pointers的思想来看,从lf出发,rt不断往前面跳转,公共子串长度为min lcp(lf,rt),当且仅当lf到rt之间,字串出现在了n/2个主串时候停止。 那么这个时候如果rt再往下走,依然满足题意,但同时 阅读全文
posted @ 2019-12-05 22:15 LORDXX 阅读(218) 评论(0) 推荐(0)
摘要:题目出的挺好的,数学知识较多。虚拟rk:801 A.Creating a Character 题意:给出力量和敏捷两个属性,现在给出技能点数,在必须使用完技能点数的情况下,有多少种情况,力量属性严格大于敏捷。 wa了4次。 细节蛮多的。可以推导出来 (力量 敏捷)+技能点数/2 点在敏捷上的技能点数 阅读全文
posted @ 2019-12-05 19:49 LORDXX 阅读(456) 评论(0) 推荐(0)
摘要:C. Digital Path 题意: 给出一个网格,格子里面有各自的值,要求找出有多少条线路,是从某一个块四周自己最小开始走到某一个块,四周自己最大并且长度大于等于四。 解:显然,对于某一块,我们判断他能不能成为起点,就可以判断他的上下左右是否比他小1,比他小1那么肯定不能作为起点。判断终点同理。 阅读全文
posted @ 2019-12-04 19:27 LORDXX 阅读(199) 评论(0) 推荐(0)
摘要:题意,给出两个字符串,给一个k,求出满足a的字串与b的子串完全一样的长度 =k的所有情况的数量。 翻译一下题意就是求所有后缀中,lcp =k的即可。 我们拼接两个字符串,中间用不出现的字符隔开即可。 然后就是如何求解的问题。 我们知道lcp(i,j)=min(height[i+1],....,hei 阅读全文
posted @ 2019-12-03 22:13 LORDXX 阅读(132) 评论(0) 推荐(0)
摘要:为了能早日上紫名,特此开一个记录我每天刷题记录的。 除了每日专题以外,每天一套cf,开着虚拟参赛做。 A 水题 cpp include include include include include include include include include include include in 阅读全文
posted @ 2019-12-03 21:51 LORDXX 阅读(120) 评论(0) 推荐(0)