- 博客(6)
- 收藏
- 关注
原创 2018 UESTC Training for Graph Theory
E - 北极的猴子给出n个点,m条边的带权无向图,问从点s到点t,删除至多两条边,是否能够使得点s到点t不连通,即无法双向来回,求最小花费。cf原题 先用dfs找到从s到t的任意一条路径,因为要删的1条或两条边,一定在这条路径上,否则一定会连通的,然后枚举这条路径上的每一条边,即这是要删除的第一条边,跑一次tarjan找到在删除这一条边的情况下的所有的桥(删掉桥是能将图分成两个或多个子图),然后在...
2018-06-29 21:16:27 284
原创 Tarjan算法-求强连通分量入门
Tarjan算法求强连通分量,强连通分量就是有向图(可以是子图)中的任意两点都能互相到达,所以我们可以用Tarjan算法去求出所有的强连通分量,相当于缩点,然后把这些缩点连接起来,就是DAG(有向无环图),DAG一定有一个点是出度为0的,可以尝试画画图。#include <iostream> #include <cstdio> #include <cstring>...
2018-06-27 20:25:14 1022
原创 分块入门专题
http://hzwer.com/8053.html 先上大神博客。https://loj.ac/problems/tag/207 题目链接分块,是一种能过题的暴力,一般复杂度为n^(1/2),可以处理很多区间的问题的数据结构,因此很有必要去学习分块这里有入门级别的九道题,我觉得做题要自己去摸索,而不是一味得去读别人的题解,否则到时候就算做过,也有可能wa成狗...1.给出一个长为n的数列,以及n...
2018-06-20 11:47:54 379
原创 树状数组专题总结
树状数组有许多经典的区间操作值得我们去学习,相当于一个模板,理解起来也是比较容易,树状数组功能很强大,同时代码也比较简单,而线段树代码量很大,容易出错,比较难去深入的理解,所以我先学习了树状数组才准备开线段树,并非线段树不重要,线段树的应用更加广泛,所以这种数据结构的学习肯定也要深入的,那么我先总结一下树状数组吧。lowbit(x)求的是x的二进制位中,最后有k个0,返回的值是2^k1.区间求和+...
2018-06-16 16:40:22 384
原创 UESTC 数据结构
老头马桶枪! Time Limit: 1000 MS Memory Limit: 64 MB 众所周知,集训队的题目是非常困难的。因此,队员们在挂机AK之后,常常会玩一些游戏。这次,率先AK的周大爷想出了一个叫老头马桶枪的游戏。在一...
2018-06-12 22:21:44 440
原创 hdu4000树状数组
https://vjudge.net/problem/HDU-4000给出n个数,求所有的i<j<k且a[i]<a[k]<a[j]的个数题目也就是让最后那个数第二大。我们输入第i个数字a,那么我们用的树状数组存的就是sum(a-1),sum(a-1)表示在a这个位置,在前i-1个数中,有sum(a-1)个数比a小,那么我们就可以求出在后面的(i+1,n)的序列中,有R=(n...
2018-06-02 18:14:36 354
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人