摘要: 在普通的莫队中引入一维时间戳,读入时对每次询问记录最近一次修改的时间。离线操作时增加一维时间的操作,如果当前时间在当前询问的时间戳之前,那么把中间这一段时间的贡献加入答案,否则,把多出来的这段时间的贡献删除。删除的操作如下:正向经过时间是把修改贡献一个个累加,反向经过时间相当于把之前累加的贡献还原, 阅读全文
posted @ 2020-07-11 19:05 Kimyon 阅读(222) 评论(0) 推荐(1) 编辑
摘要: 难道真的会有人来看这个题解吗?不会把..我只是骗波阅读量(如果有关注就更好了[滑稽]) 大致的思路写在代码的注释里了,如有错误还望指正 /* * .,, .,:;;iiiiiiiii;;:,,. .,, * rGB##HS,.;iirrrrriiiiiiiiiirrrrri;,s&##MAS, * 阅读全文
posted @ 2020-07-05 19:18 Kimyon 阅读(662) 评论(0) 推荐(0) 编辑
摘要: 题意:背包问题,每个物品有价值和所谓的重要度,以及可以是其他物品的附件,只有购买了主件才能购买附件,.求有n元买m件以内的物品的最大价值和重要度乘积的和.其中一个主件的附件数比较少,最多只有2个附件. 分析:数据范围比较小,最多只有2个附件直接分组背包,m件是典型二维费用背包,注意枚举顺序是先分组再 阅读全文
posted @ 2020-07-04 21:29 Kimyon 阅读(204) 评论(0) 推荐(0) 编辑
摘要: dir(sth) 查看有哪些方法 help(方法) 查看方法如何使用 range,切片区间 : 左闭右开 random : 左闭右闭 切片 : [起点:终点:步长] 左到右坐标从0到n-1 右到左坐标从-1到-n 字符串转列表: list(s) 列表转字符串: "".join(lst) 格式字符串相 阅读全文
posted @ 2020-06-25 16:49 Kimyon 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 1 const int maxn = 1e6+10; 2 3 int prime[maxn]; 4 int vis[maxn]; 5 int cnt; 6 7 void is_prime() {//线性筛 8 for (int i = 2; i < maxn; i++) { 9 if (!vis[i 阅读全文
posted @ 2020-05-13 19:28 Kimyon 阅读(201) 评论(0) 推荐(0) 编辑
摘要: dp1[u]:距离u节点的最远子结点的距离,dp2[u]:距离u节点的次远的子结点的距离,up[u]:u节点上方节点的最远距离。 1 void dfs1(int u ,int pre) { 2 for (int i = head[u]; ~i; i = edge[i].next) { 3 int v 阅读全文
posted @ 2020-05-11 15:02 Kimyon 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 虽然之前没做过数独,不知道这种题是咋出出来的,但的确每一步都能通过一定的推理确定,不含赌的成分(话说假设法不算赌吧quq)。 每一行每一列每一个九宫格内1-9只出现一次,从带有圆球一端开始每条曲线上的数字严格递增。 先给原图: 以下提供一种解题思路: 1.考虑字母M,因为(4,6)含有数字8,因此字 阅读全文
posted @ 2020-05-03 13:33 Kimyon 阅读(711) 评论(0) 推荐(0) 编辑
摘要: 达克效应(D-K effect),全称为邓宁-克鲁格效应(Dunning-Kruger effect)。它是一种认知偏差现象,指的是能力欠缺的人在自己欠考虑的决定的基础上得出错误结论,但是无法正确认识到自身的不足,辨别错误行为。这些能力欠缺者们沉浸在自我营造的虚幻的优势之中,常常高估自己的能力水平, 阅读全文
posted @ 2020-04-28 19:28 Kimyon 阅读(336) 评论(0) 推荐(1) 编辑
摘要: 题意:a[i]代表维护1~i区间的线段树建树后数组的最大下标,有1e15范围内的l和r,求a[l]一直异或到a[r]的值。 分析:a[l]异或到a[r]采用从(1异或到a[l-1])异或(1异或到a[r])求出,所以只需要算1异或到a[i]即可。具体原理如何得到一个线段树数组最大下标的值还没有搞懂, 阅读全文
posted @ 2020-04-27 23:20 Kimyon 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 题意:q个询问,每个询问给出1到1e14之间的整数a、b和m,问a经过一系列步骤之后能否变换到b,如果能输出变换过程,如果不能输出 1。这里的一系列变换指:当前数等于之前所有数之和加上r,其中r的范围是1 = 2,那么a的个数是2^(k 2)个。有了这个思路,我们考虑r,第一个数是a,第二个数实际上 阅读全文
posted @ 2020-04-26 00:36 Kimyon 阅读(204) 评论(0) 推荐(0) 编辑