摘要:
博主图论比较弱,搜了模版也不会用。。。所以决心学习下tarjan算法。割点和割边的概念不在赘述,tarjan能在线性时间复杂度内求出割边。重要的概念:时间戟,就是一个全局变量clock记录访问结点的时间。一个无向图dfs会形成一个森林,当图只有一个连通分量时,就只有一棵树。由于在无向图中,除了树边,... 阅读全文
posted @ 2015-07-19 21:37
瑞宇
阅读(747)
评论(0)
推荐(0)
摘要:
题意:问两个迷宫是否存在公共最短路。题解:两个反向bfs建立层次图,一遍正向bfs寻找公共最短路#include#include#includeusing namespace std;const int maxn = 500+1;int d1[maxn][maxn];int d2[maxn][max... 阅读全文
posted @ 2015-07-19 11:25
瑞宇
阅读(313)
评论(0)
推荐(0)
摘要:
题意:给你一堆牌,和一些洗牌机,可以改变牌的顺序,问你能不能通过洗牌机把数字为x的牌洗到第一个位置。题解:反向建边,dfs判断连通性#include#includeusing namespace std;const int maxn = 200000+4;int a[maxn];vector son... 阅读全文
posted @ 2015-07-19 09:53
瑞宇
阅读(353)
评论(0)
推荐(0)
摘要:
题意:给你一个函数和一些系数,给你一堆询问,求函数值。根据s的符号,分成两组讨论,函数值与比x小的系数数量有关,二分输出答案。#include#includeusing namespace std;const int maxn = 200000+1;int A[maxn];int B[maxn];i... 阅读全文
posted @ 2015-07-19 09:10
瑞宇
阅读(297)
评论(2)
推荐(0)
摘要:
题意:给n个元素,从n中选两个非空集合A和B。问有多少中选法?递推:dp[n]表示元素个数为n的方案数,对于新来的一个元素,要么加入集合,要么不加入集合自成一个集合。加入集合有三种选择,A,B,E(可空的集合),或者自成集合,作为A或B,然后在选一个n-1个元素的非空子集(2^n-1 - 1)。#i... 阅读全文
posted @ 2015-07-19 00:37
瑞宇
阅读(322)
评论(0)
推荐(0)
摘要:
题意:给两个一样的只含有26个小写字母的字符串,然后两个分别做一下排列,问如果对应位置的字母相等那么就愉悦值就加一,问愉悦值的期望是多少?题解:只考虑两个序列相对的位置,那么就相当于固定一个位置,另外一个序列做排列。对于一个字符,假设是a,然后a有Na个,那么a选第一个序列中a对应的位置,发生这个事... 阅读全文
posted @ 2015-07-19 00:00
瑞宇
阅读(486)
评论(0)
推荐(0)

浙公网安备 33010602011771号