摘要:
题意:给你一列数,然后每次删除固定的数,问你最多删几次,打印每次删除那些数 思路:一眼看过去,这个数据范围,应该是二分,但是怎么二分check确一直没想好。其实还是忽略了二分只需要检查就好,虽然一直告诉自己这句话,但是还是没什么反应,这个题对于你枚举的x,用桶标记以后直接累加就好了,自己真是* 代码 阅读全文
摘要:
题意:这个题给你n个数,然后有q组询问,无修改,每次询问一个长度x,问你所有长度为x的区间价值加和是多少,区间的价值的计算是这样定义的,一个区间的价值就等于这个区间中不同数字的个数 思路:看了题解虽然理解了,但感觉还是很难想啊,原本这个题卡在了怎么把n2的降维成n的,这个题目也算是很经典的一个套路吧 阅读全文
摘要:
题意:给你1~n的数字,问你一个集合中的lcm大于m的集合有多少个 思路:这个题挺有意思的,我们直接的可以想到爆枚的话的复杂度有2^40,但是这些数中的lcm的答案缺不会有很多,最多也就是这40个数的lcm,所以不会有很大,那这样的话我们用一个map来记录dp[i]代表当前是有前i个数,对于每i个数 阅读全文
摘要:
题意:问你1到n中间有多少数包含13的子串,并且是13的倍数 思路:我们很容易想到,一个数是不是13的倍数,只需要进行同余模定理就可以了,然后在设置一个标志存储是否含有13的串,(我觉得这样做真的没有什么问题,但在记录答案的时候会多记录),然后我们说正确的状态怎么定义其实是多了一个位置,把刚才的标志 阅读全文
摘要:
题意:给你平面上n个点,让你求每个点的最近点的距离的平方 思路:KD-Tree裸题,看了几篇关于KD tree的博客,大概理解的差不多,基本比赛里的KD Tree好像就是每个维度都分一下,不是和很多博客中介绍的使用方差来进行对每个维度的判断,而且基本也没有BBF的优化,(反正怎么样我也学不会),搬运 阅读全文
摘要:
题意:给你n个炸弹,每个炸弹都有两个位置放置,问你最大的爆炸半径,使得任意两个炸弹的爆炸范围不相交,可以相切,问半径是多少 思路:对半径进行二分,很显然是单调的,所以满足条件,然后由于点数不是很多,每次n2暴力建图跑sat 代码:(忘记跑tarjan对着空气debug半小时) 阅读全文
摘要:
题意:中文题,裸的SAT 思路:推荐一个聚聚关于SAT的讲解(传送门),poj也有类似的板子题,谁知道poj挂了 代码: 阅读全文
摘要:
题意:给你列数,有一个中位数的定义,然后求出每一个区间的中位数,然后打印这些中位数的中位数 思路:没见过,真的学不来,看了聚聚们的博客以后,才学会。我们直接二分答案,我们有了答案以后,小于等于的mid的标记为1,其他的为-1,这样从一定程度上反应了区间大于和小于中位数的个数,对这个数组求前缀和,这样 阅读全文