
19牛客多校
几许情愁
这个作者很懒,什么都没留下…
展开
-
2019牛客多校第二场 H Second Large Rectangle 【DP+单调栈】
题目链接:https://ac.nowcoder.com/acm/contest/882/H 题目大意:给出一个01矩阵,求由1构成的第二大矩阵的面积; /* dp[i][j]表示当前位置向上扩展连续是1的长度 开一个结构体存每个点构成最大矩阵的宽和高,单调队列里存高递增的点, 这样栈里只有比当前点高要低的元素(因为比当前高的也用不着),然后循 环一变栈里的元素更新第一大和第二大的矩阵 */...原创 2019-07-23 15:07:42 · 232 阅读 · 0 评论 -
2019牛客多校联赛第二场F Partition problem 【dfs】
题目链接:https://ac.nowcoder.com/acm/contest/882/F; /* 题意:有2n个人,把2n个人分成两组,求两组的权值最大 思路:数据较小,可以暴搜,具体看代码注释 当前人加入A组是,就将当前人与B组已有的人之间的权值相加 */ #include<stdio.h> #include<string.h> #include<algo...原创 2019-07-23 16:24:43 · 169 阅读 · 0 评论 -
2019牛客多校第四场 C squence 【单调栈+线段树】
题目链接:https://ac.nowcoder.com/acm/contest/884/C /* 思路:构造一个单调减栈(栈里元素下标增大值增大),把序列 A 添加进去,如果当前 A[i] 比栈头元素小, 将栈头元素弹出,此时以弹出元素为最小的区间就是此时栈头元素的下标和当前 A[i] 下标即i,然后用线段 树来求出这个区间里 B 的前缀和最大的差值。 具体为:假设以当前A[i]为最小的区间...原创 2019-07-30 09:29:07 · 236 阅读 · 0 评论 -
2019牛客多校第五场 G subsequence 【DP】
题目链接:https://ac.nowcoder.com/acm/contest/885/G; 题目大意:给出 s 串和 t 串,求 s 串中有多少个子序列大于 t 串; /* 子序列包括长度等于m和长度大于m的。 对于长度大于m的,可以用组合数得到,枚举不为零的开头,剩下的数字再选m以上个包括m个。 对于长度相同的,可以用dp得到, dp[i][j] 表示s串前i个选j个并且大于t串的前...原创 2019-08-06 10:50:21 · 210 阅读 · 0 评论 -
2019 牛客多校第五场 H subsequence 2【拓扑排序】
题目链接:https://ac.nowcoder.com/acm/contest/885/H 题意:要你使用前m个小写字母构造一个长度为n的字符串,有m*(m-1)/2m∗(m−1)/2个限制条件: 字符c1 c2,长度len,字符串s:原字符串包含c1和c2 的长度为len,s字符串由c1 和 c2组成,顺序为他们在原字符串中的顺序; /* 根据题意可知,想要输出当前的字母必须把前面的字...原创 2019-08-06 15:49:54 · 166 阅读 · 0 评论