摘要: 时间复杂度:不修改的时间复杂度 为n*logn 修改的n*pow(n,0.6666) 思想: 优化的暴力,对询问进行离线化的操作,减少一些重复的元素的时间复杂度。 应用: 针对某些以元素大小为单位的大量询问,给出了,l 和 r。 其实看到 l,r 就可以想想是不是线段树,莫队,树状数组啥的。 一般莫 阅读全文
posted @ 2019-10-20 21:19 VxiaohuanV 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 思想:把树拆分成 一条一条的线段(利用重链) 在变成1条线(从而利用线段树处理) 应用: 主要是 对数的lca求解,并且对lca的路径上进行查询和修改。 两次dfs 进行构建 第一次 为拆分树做准备: 重儿子 son,每一个点的深度,父亲,尺寸; int dep[M],vis[M],fa[M],so 阅读全文
posted @ 2019-10-16 22:10 VxiaohuanV 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 11. 有以下结构体说明和变量定义,如图所示,指针 p、 q、 r 分别指向一个链表中的三个连续结点。 struct node { int data;struct node *next;} *p, *q, *r;现要将 q 和 r 所指结点的先后位置交换,同时要保持链表的连续,以下程序段中错误的是( 阅读全文
posted @ 2019-10-15 22:14 VxiaohuanV 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 利用2进制的思想(把 要^的数 二进制化) 同时 将 a 化为二进制每一位的单位 a乘着走 仔细看代码 int n,m; long long P; long long qsn(long long a,long long b) // 函数中的long long { long long ans=1; / 阅读全文
posted @ 2019-10-15 14:52 VxiaohuanV 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 思路 遇到可以随便让你排序的题,想最优的排序。(如果很好想就不是关键,+上其他的关键知识,比如dp什么的) 如果不能谁便看出来,就想前后的关系,满足什么样的条件a才可以到b的前面。 让后进行排序 快速排序: 代码: void _qst(int l,int r) { int mid=(r+l)/2; 阅读全文
posted @ 2019-10-15 14:29 VxiaohuanV 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 小伙伴的博客(详细): https://www.cnblogs.com/ppp204-is-a-VC/p/11673567.html 阅读全文
posted @ 2019-10-14 22:10 VxiaohuanV 阅读(170) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-10-11 22:05 VxiaohuanV 阅读(1) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-10-09 22:10 VxiaohuanV 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 字符数组的输入特殊 char s;scanf(“%s”,s+1) 个别情况要加1;没有& 推荐使用双哈希 哈希代码: 不能用sort排序!!!!!!! 有问题,因为是双哈希。 快速排序: 样例 好文章: nodgd 写了一篇文章,自认为这是一篇好文章。nodgd 的文章由?个小写英文字母组成。文章的 阅读全文
posted @ 2019-10-09 20:51 VxiaohuanV 阅读(111) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-10-08 21:53 VxiaohuanV 阅读(0) 评论(0) 推荐(0) 编辑