自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 欢迎使用CSDN-markdown编辑器

Attack on TitansOver centuries ago, mankind faced a new enemy, the Titans. The difference of power between mankind and their newfound enemy was overwhelming. Soon, mankind was driven to the brink of ex

2017-08-31 17:49:08 228

转载 KMP字符串匹配算法

字符串匹配是计算机的基本任务之一。 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"? 许多算法可以完成这个任务,Knuth-Morris-Pratt算法(简称KMP)是最常用的之一。它以三个发明者命名,起头的那个K就是著名科学家Donald Knuth。 这种算法不太容易理解,网上

2017-08-16 15:11:58 186

翻译 tarjan二分图匹配问题

这篇文章讲无权二分图(unweighted bipartite graph)的最大匹配(maximum matching)和完美匹配(perfect matching),以及用于求解匹配的匈牙利算法(Hungarian Algorithm);不讲带权二分图的最佳匹配。 二分图:简单来说,如果图中点可以被分为两组,并且使得所有边都跨越组的边界,则这就是一个二分图。准确地说:把一个图的顶点划分为

2017-07-25 16:41:39 276

原创 LCA板子

题目描述 如题,给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先。 输入输出格式 输入格式: 第一行包含三个正整数N、M、S,分别表示树的结点个数、询问的个数和树根结点的序号。 接下来N-1行每行包含两个正整数x、y,表示x结点和y结点之间有一条直接连接的边(数据保证可以构成树)。 接下来M行每行包含两个正整数a、b,表示询问a结点和b结点的最近公共祖

2017-07-25 15:35:28 344

转载 单调队列入门

单调队列入门 单调队列是什么呢?可以直接从问题开始来展开。 Poj 2823: 给定一个数列,从左至右输出每个长度为m的数列段内的最小数和最大数。数列长度:N 显然,如果暴力时间复杂度为O(N*m) 不超时就怪了。 我们知道,上一种算法有一个地方是重复比较了,就是在找当前的f(i)的时候,i的前面m-1个数其它在算f(i-1)的时候我们就比较过了。 当你一个个往下找时,每一次都

2017-07-19 22:48:16 213

原创 noip2015跳石头---二分答案

题目背景 一年一度的“跳石头”比赛又要开始了! 题目描述 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 N 块岩石(不含起点和终 点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达 终点。 为了提高比赛难度,组委会计划移走一些岩石,使得选手们在比赛过程中的最短跳 跃距离尽可能长。由于

2017-07-18 21:56:04 444

转载 邻接表

巧妙的邻接表(数组实现) 细心的同学会发现,此时遍历边某个顶点边的时候的遍历顺序正好与读入时候的顺序相反。因为在为每个顶点插入边的时候都直接插入“链表”的首部而不是尾部。不过这并不会产生任何问题,这正是这种方法的其妙之处。 作者:ahalei来源:51CTO博客|2014-04-08 15:52  移动端  收藏   分享 之前我们介绍过图的邻接矩阵存储法,它的空间和时

2017-07-08 11:36:35 847

原创 spfa算法

粗略讲讲SPFA算法的原理,SPFA算法是1994年西安交通大学段凡丁提出 是一种求单源最短路的算法 算法中需要用到的主要变量 int n;  //表示n个点,从1到n标号 int s,t;  //s为源点,t为终点 int d[N];  //d[i]表示源点s到点i的最短路 int p[N];  //记录路径(或者说记录前驱) queue q;  //一个队列,用STL实现,当然

2017-07-08 10:16:16 140

原创 codevs四子连棋--搜索

【codevs1004】四子连棋 2016年6月12日5,0370 题目描述 Description 在一个4*4的棋盘上摆放了14颗棋子,其中有7颗白色棋子,7颗黑色棋子,有两个空白地带,任何一颗黑白棋子都可以向上下左右四个方向移动到相邻的空格,这叫行棋一步,黑白双方交替走棋,任意一方可以先走,如果某个时刻使得任意一种颜色的棋子形成四个一线(包括斜线),这样的状态为目标棋局

2017-07-08 10:00:53 312

原创 迷宫--搜索

题目描述 Description 在N*N的迷宫内,“#”为墙,“.”为路,“s”为起点,“e”为终点,一共4个方向可以走。从左上角((0,0)“s”)位置处走到右下角((n-1,n-1)“e”)位置处,可以走通则输出YES,不可以走则输出NO。 输入描述 Input Description 输入的第一行为一个整数m,表示迷宫的数量。  其后每个迷宫数据的第

2017-07-08 09:38:42 247

原创 1998Cantor表

题目描述 现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的: 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … 3/1 3/2 3/3 … 4/1 4/2 … 5/1 … … 我们以Z字形给上表的每一项编号。第一项是1/1,然后是1/2,2/1,3/1,2/2,… 输入输出格式 输入格式:

2017-07-07 23:44:32 297

原创 1998拼数

题目描述 设有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数。 例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213 又如:n=4时,4个整数7,13,4,246联接成的最大整数为:7424613 输入输出格式 输入格式: 第一行,一个正整数n。 第二行,n个正整数。 输出格式: 一个正整数,表示最大的整数 输入输出

2017-07-07 23:42:10 242

原创 1997棋盘问题2

题目描述 在N*N的棋盘上(1≤N≤10),填入1,2,…,N*N共N*N个数,使得任意两个相邻的数之和为素数。 例如:当N=2时,有: 其相邻数的和为素数的有: 1+2,1+4,4+3,2+3 当N=4时,一种可以填写的方案如下: 在这里我们约定:左上角的格子里必须填数字1。 输入输出格式 输入格式: 一个数N 输出格式: 如有多种解,则输出第一行、第一列之和为

2017-07-07 23:40:01 1439

原创 1997棋盘问题

设有一个N*M方格的棋盘(l 求出该棋盘中包含有多少个正方形、多少个长方形(不包括正方形)。 例如:当 N=2, M=3时: 正方形的个数有8个:即边长为1的正方形有6个; 边长为2的正方形有2个。 长方形的个数有10个: 即2*1的长方形有4个: 1*2的长方形有3个: 3*1的长方形有2个: 3*2的长方形有1个:

2017-07-07 23:38:21 529

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除