上一页 1 2 3 4 5 6 ··· 8 下一页
摘要: 今天花了很长时间终于弄懂了这个算法……毕竟找一个好的讲解真的太难了,所以励志我要自己写一个好的讲解QAQ 这篇文章是在懂了这个问题n^2解决方案的基础上学习。 解决的问题:给定一个序列,求最长不下降子序列的长度(nlogn的算法没法求出具体的序列是什么) 定义:a[1..n]为原始序列,d[k]表示 阅读全文
posted @ 2017-12-31 11:33 ACMsong 阅读(622) 评论(0) 推荐(1) 编辑
摘要: 方法一:增量构造法 理解递归必须得理解函数到底是做什么的。 方法二:位向量法 枚举每一位选或者不选,复杂度比方法一略高但更好理解,因为与输出全排列思路差不多,满n位就输出。 缺点是输出不是按照字典序。 方法三:二进制法 稍加思考就会发现,方法二其实与二进制是对应的。 这个方法优点就是代码简单。 注意 阅读全文
posted @ 2017-12-31 11:32 ACMsong 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.bnuoj.com/v3/problem_show.php?pid=25660 这个二分真的是烧脑QAQ,想了一晚上才懂了一个大概。 首先,整体思路是二分,直观上感受一下,就是给第0类边加一个权值,这个权值越大,会让第0类边选的个数变少;权值变小,会上第0类边的个数 阅读全文
posted @ 2017-12-31 11:30 ACMsong 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 链接:http://codeforces.com/contest/616 A题: 统一成1e6长度的字符串,右对齐比较字典序。 B题: 求所有行的最小值,里面最大的那个。暴力。 C题: 先用dfs给每个位置标记一个连通块编号。然后对于每个*,直接看一下上下左右合并一下(不是真的合并)看一下大小。 D 阅读全文
posted @ 2017-11-11 10:35 ACMsong 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 链接:http://codeforces.com/contest/612/ A题: 枚举切多少个p,看剩下的能否整除q。 B题: 从1到n模拟一下,累加移动的距离。 C题: 先用括号匹配的思路看是否有解(所有左括号看做一样,所有右括号看做一样)。 如果有解,就从左到右扫描,记录一个栈,遇到跟栈顶不匹 阅读全文
posted @ 2017-11-11 10:28 ACMsong 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 链接:http://codeforces.com/contest/609 A题: 贪心,从大到小选。 B题: 考虑对立面。$C_{sum}^2-\sum{C_{a_i}^2}$ C题: 最终状态是确定的,从小到大贪心。不够就补,多了就挪。 D题: 二分时间,对于一个给定时间段,对于每种货币都选这段时 阅读全文
posted @ 2017-11-09 09:49 ACMsong 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 链接:http://codeforces.com/contest/600 A题: 字符串处理。 B题: sort+upper_bound C题: 统计一下每种字符的个数,然后贪心。 (1) 如果没有奇数个的字母。直接按字典序放。 (2) 如果有1个奇数个的字母。就把单出来的那一个字符(注意是一个字符 阅读全文
posted @ 2017-11-07 10:57 ACMsong 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 链接:http://codeforces.com/contest/873/ A题: 贪心,把最大的k个数变成x即可。 B题: 从左向右枚举右端点,维护balance的最长长度。任意一个子串可以看做两个前缀相减,对于已知当前右端点中1比0多多少个,只需要减去前面的某个前缀,在这个前缀中1比0也多这么多 阅读全文
posted @ 2017-10-31 17:02 ACMsong 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 链接:http://codeforces.com/contest/884 A题: 求86400-ai的前缀和,找到第一个大于等于给定t的即可。 B题: 任意相邻两段之间必然有一个0,然后算一下至少的长度,然后看有多少多余的长度(可以为负数),多余的长度不等于0就是NO。 C题: 由题意可知,线路是若 阅读全文
posted @ 2017-10-31 16:46 ACMsong 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://codeforces.com/gym/101350/problems 给定n个墙,每个墙有一个高度,要支持动态修改墙的高度和查询这个“容器”能盛多少水。 (队友)观察发现,能盛的水的体积就等于这个容器的“凸包”的体积减去墙的体积。所以要做的就是动态的维护凸包。 由于只有墙上升 阅读全文
posted @ 2017-10-23 18:33 ACMsong 阅读(421) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 8 下一页