思维题——牛客多校第六场D】的更多相关文章

这题的不能用二分做,因为不满足单调性的 可以用multiset做 #include<bits/stdc++.h> #define ll long long #define rep(i,a,b) for(int i=a;i<=b;i++) using namespace std; ; multiset<int>s; multiset<int>::iterator it; int a[maxn],T,N,K,C; bool check(int Mid) { s.cle…
考的其实是同构图的性质: 1.同构图的顶点数,边数相等 2.同构图通过点的映射后邻接矩阵相同 这篇博客讲的很好https://www.jianshu.com/p/c33b5d1b4cd9 本题还需要一步构造的方案,通过最基础的n=4和n=4+1的图的图推广到n=4k和n=4k+1的状态 #include<bits/stdc++.h> using namespace std; #define maxn 2005 int mp[maxn][maxn]; int n,f[maxn]; int mai…
链接:https://www.nowcoder.com/acm/contest/144/J来源:牛客网 skywalkert, the new legend of Beihang University ACM-ICPC Team, retired this year leaving a group of newbies again. Rumor has it that he left a heritage when he left, and only the one who has at lea…
链接:https://www.nowcoder.com/acm/contest/144/C来源:牛客网 Oak is given N empty and non-repeatable sets which are numbered from 1 to N. Now Oak is going to do N operations. In the i-th operation, he will insert an integer x between 1 and M to every set inde…
链接:https://ac.nowcoder.com/acm/contest/887/H来源:牛客网 题目描述 Given three integers A, B, C. Count the number of pairs <x ,y> (with 1≤x≤Aand1≤y≤B) such that at least one of the following is true: - (x and y) > C - (x xor y) < C   ("and", &q…
目录 题目链接 题意 思路 代码 题目链接 传送门 题意 问\(s\)串中所有本质不同的回文子串中有多少对回文子串满足\(a\)是\(b\)的子串. 思路 参考代码:传送门 本质不同的回文子串肯定是要用回文树的啦- 在建好回文树后分别对根结点为\(0,1\)的子树进行\(dfs\),处理出以每个结点为根结点的子树的大小\(sz\)(也就是说有多少个回文子串以其为中心)和其\(dfs\)序,回文子串包含除了作为其他回文子串的中心被包含外,还可以不作为中心被包含,而这一部分则需要靠回文树的\(fai…
题目链接:https://ac.nowcoder.com/acm/contest/886/B 题意: 您将获得一个IPv6地址,该地址是128位二进制字符串.请根据以下规则确定其最短的表示: 以十六进制表示形式表示地址,并使用冒号':'分割每四个十六进制数字.每四个数字称为一个字段.例如,'0000:0000:0123:4567:89ab:0000:0000:0000' 可以省略字段中的前导零.例如,上述IPv6地址可以缩短为 '0:0:123:4567:89ab:0:0:0' 由至少两个字段组…
题意: 有个家伙装东西,他的策略是贪心,每次装进去这个盒子能装下的最大的东西,直到把这个盒子装满,再去装下一个盒子. 给出盒子的数量k和一些东西的重量,问你最小需要多大的盒子才能以这种贪心策略装下. 题解: 如果某个解可行,比它大的值未必可行,比如有15个物品,5个39,5个60,5个100,5个盒子,那么盒子大小199可以,200不行,201也不行.所以不能二分. 首先,显然答案下界为ceil(sum/k). 设最大的物品重量为maxv,假如某个ans装不下,那么在此ans下,装下除maxv外…
题意: 给你\(A-J\)的字母组成的日期,形式为\(yyyy/mm/dd\).现给你\(n\)个这样的串\((n<=1e5)\),问你把字母映射成数字,并且使得所有日期合法且为星期五的最小字典序为什么. 思路: 判断星期几可以直接用吉姆拉尔森公式解决. inline int weekday(int y, int m, int d){ \(\qquad\)if(m <= 2){m += 12, y--;} \(\qquad\)return (d + 2 * m + 3 * (m + 1) /…
Upgrading Technology 题目传送门 解题思路 对于这题,我们可以枚举一个k从0~m,表示当前我们把所有技能最少升到了k级,且至少有一个为k级. 此时我们刚好获得了前k个d[]的收益,并花费了所有技能升到k级的花费.因为现在我们已经把所有技能都升到k了,为了获得当前情况下的最大收益,我们要把每一个技能继续升级到一定的等级,使我们能够通过这一技能获得最大的收益(即最小花费),即s[k~m]的最小值 - s[k] (s[]为这一技能花费的前缀和).我们可以用单调队列来维护这个最小值.…