codeforces
_Novice
深自缄默,如云漂泊
展开
-
CodeForces 1337D Xenia and Colorful Gems 暴力+二分
二分写成死循环n次,我是废物。题目地址思路:在三个数组里各找一个值x,y,z,使(x−y)2+(y−z)2+(z−x)2 (x−y)^2+(y−z)^2+(z−x)^2 (x−y)2+(y−z)2+(z−x)2最小。那就是要找三个离得最近的数。假设x<=y<=z,那就是要遍历第二个数组,对每一个元素求第一个数组里比它小的最大值和第三个数组里比它大的最小值。排列三个数组然后二分即...原创 2020-04-21 21:31:05 · 218 阅读 · 0 评论 -
HDU 6635 Nonsense Time (多次求LIS)
题目链接代码#include<iostream>#include<algorithm>#include<cstdio>using namespace std;const int inf=0x3f3f3f3f;const int maxn=5e4+7;int dp[maxn]; ///LIS元素数组int a[maxn]; ///原数组...原创 2019-08-13 12:44:37 · 161 阅读 · 0 评论 -
CodeForces - 356A Knight Tournament(线段树,或并查集,或set)
题目链接题目大意一些骑士打架,输了就淘汰,输出一个数组,表示第i个人是被a[i]淘汰的。因为涉及到区间的修改,不可避免的想到了线段树,可惜菜鸡只会用区间加的板子,这种值替换的线段树不会写,菜哭了。还是一手正难则反,考虑倒着处理每一次战斗,这样可以覆盖之前的的修改。代码#include<iostream>#include<cstdio>using namesp...原创 2019-08-13 16:17:24 · 167 阅读 · 0 评论 -
Codeforces 271D Good Substrings(字符串哈希与set去重)
题目链接参考博客题目大意先给一个字符串,只含小写字母,然后定义了字母的好坏,求包含坏字母数量不超过k的连续字串的数量(相同字串不重复算)。分析这题字符串的最大长度是1500,不搞一个n^2的算法简直对不起出题人的好意 (小菜鸡暂时也搞不了复杂度更低的了) ,哦,貌似set还要logn。。先前缀和预处理坏字符的数量,然后枚举每个区间,哈希后存于set中去重,输出set的长度即可。sb的一...原创 2019-08-09 16:39:59 · 242 阅读 · 0 评论 -
codeforces 128B String(优先队列求第k小字典序子序列)
题目链接参考了mz的博客,mznb题意求字典序第k小的子序列思路巧妙的利用优先队列,先定义一个存子序列和序列最后一位的下标的结构体,将每个元素和下标入栈。然后处理的时候将栈顶元素取出,将k–,判断k是否大于零,如果不是就说明找到了第k大,是就凭他存的下标给他加上下一个元素,这样就能按字典序的顺序取出子序列。代码#include<iostream>#include<...原创 2019-08-14 09:43:34 · 906 阅读 · 0 评论 -
Codeforces 659E New Reform(并查集维护连通块)
题目链接参考博客题意有一些双向边连接的点,现在要把每条边变成单向边,问最少有多少点没有入度思路1.可以建成一个有向图,可能有k个联通块,如果一个联通块没有环,就说明这个联通块,至少有一个城市单独的,因此就化成找联通块和环的问题2.联通块的话可以用并查集来维护,然后用cir[maxn]数组来标记是否有环,如果这个联通块的根节点存在环,那么该联通块不存在单独的城市,如果不存在环的话ans+...原创 2019-08-16 15:33:10 · 220 阅读 · 2 评论