摘要:
题目如下: poj 3468 输入整数n,q,然后输入n个数的序列,再然后输入q条询问,询问有两种类型: Q l r 代表打印出区间【l,r】的和 C l r v 代表区间【l,r】区间的数都加v 基本思路: 这里选择线段树,主要是为了练习线段树标记永久化 下面介绍线段树标记永久化: 代码如下: 转 阅读全文
摘要:
题目大意: 区间第k大问题+单点修改 基本思路: 这个题有用整体二分,cdq分治,还有主席树+平衡树的,还有就是主席树+树状数组。 我采用的是b站电子科大大佬的主席树写法,尤其喜欢他的离散化方法,所以就这么写了。 下面对代码进行下解释(当然,详细解释看注解): root[i]:第i棵树根节点的编号, 阅读全文
摘要:
题目大意: 求序列的区间第k大 基本思路: 因为我根本就没有思路,知道这是主席树,我就去学了下,在b站上看了uestc的教学视频,然后看了一篇博客,博客http://www.cnblogs.com/Empress/p/4652449.html,我觉得理解的无修改主席树差不多了,也没那么难。下面代码是 阅读全文
摘要:
题目大意: 计蒜客第6题泥塑课 基本思路: 不需要思路 代码如下: 阅读全文
摘要:
转自:https://blog.csdn.net/zhoudaxia/article/details/23605263 在Python交互式解释器中输 入import this就会显示Tim Peters的The Zen of Python: >>> import this The Zen of Python, by Tim Peters Beautiful is better than ug... 阅读全文
摘要:
转自:https://blog.csdn.net/my_sunshine26/article/details/79831362 题目大意: i从1开始 基本思路: 完全没思路,所以上来就二分,果不其然卡死在了第7个样例,然后认为是贪心,苦思冥想未果,然后就看了答案。 说是主席树模板题,但是可以用巧方 阅读全文
摘要:
''' for循环: for i in range(x,y,dir): pass 首先这个区间是左闭右开 其次dir在省略的情况下默认为1,就是每次加一,也可以指定 python的数组: python中是没有数组的,但是可以用list来代替数组 一维数组: 方法一: arr=[0 for x in range(0,n)] 方法二: arr=[0]*10 方法一和方法二是等效的 二维数组... 阅读全文
摘要:
明天补充~~~先上代码 阅读全文
摘要:
一开始努力学数学是3年级吧,记得数学老师布置了6,7道题目,看谁能解出来,那个时候,大家都觉得能做出老师给的题目好厉害好聪明啊,很不巧的是我确实不会解,很抱歉我不是什么数学天才,这不是一个天才的故事,哈哈,然后就这能羡慕人家能做出题的小朋友,年少时的心境大概就是如此吧,现在人说羡慕嫉妒恨,小朋友们之 阅读全文
摘要:
模板题:洛谷p3376 题目大意: 给出一个网络图,以及其源点和汇点,求出其网络最大流。 基本思路: 套模板 EK的时间复杂度O(V*E^2) EK算法思路: 1.通过BFS拓展合法节点(每个节点在本次BFS中仅遍历一次),找到汇点,并记录每个节点的前面节点(pre)(若找不到增广路,算法结束) 2 阅读全文
摘要:
int dfn[maxn],low[maxn],belong[maxn]; bool instk[maxn]; stackstk; void tarjan(int u){ dfn[u]=low[u]=++cnt; stk.push(u); instk[u]=1; int sz=gra[u].size(); for(int i=0;i<sz;i++){ ... 阅读全文
摘要:
转自:https://www.zhihu.com/question/40746887/answer/88428236 连通分量有三种∶边双连通分量,点双连通分量,强连通分量,前两种属于无向图,后一种属于有向图 定义: 双连通分量又分双连通分量和边双连通分量两种。若一个无向图中的去掉任意一个节点(一条 阅读全文
摘要:
与割点唯一一点不同是low[v]>=dfn[u]变为low[v]>dfn[u] 代码如下: 阅读全文
摘要:
借鉴自:https://blog.csdn.net/wr132/article/details/43861145 https://blog.csdn.net/linqing360/article/details/79653002 题目大意: 问题描述 观察这个数列: 1 3 0 2 -1 1 -2 阅读全文
摘要:
不断完善中~~~ 01背包 完全背包 阅读全文
摘要:
题目大意: 问题描述 n 个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。 每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是0。 如果某个小朋友第一次被要求交换,则他的不高兴程度增加1,如果第二次要求他交换,则他的不高兴程度增加2( 阅读全文
摘要:
题目大意: 求割点; 基本思路: tarjan算法,套板子 代码如下: 阅读全文
摘要:
基本思路: 朴素的思想是删除每一个点,然后去dfs,这样无疑会爆炸 换一种思路,怎样判断是割点呢,如果是根节点的话毫无疑问只要看子树的数目,但是如果不是根节点呢,不知大牛是怎样想到的 利用两个数组dfn和low数组,含义分别是dfn[u]表示顶点u第几个被(首次)访问, low[u]表示顶点u及其子 阅读全文
摘要:
定义: 对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。 代码如下: 阅读全文
摘要:
问题描述 n个人参加某项特殊考试。 为了公平,要求任何两个认识的人不能分在同一个考场。 求是少需要分几个考场才能满足条件。 输入格式 第一行,一个整数n(1<n<100),表示参加考试的人数。 第二行,一个整数m,表示接下来有m行数据 以下m行每行的格式为:两个整数a,b,用空格分开 (1<=a,b 阅读全文