- 博客(52)
- 资源 (3)
- 收藏
- 关注
转载 图论(九)最小生成树-Kruskal算法
前面说过,Kruskal是从最短边着手构建最小生成树的。其基本过程是:先对图中的所有边按照权重值从小到大进行排序,然后着手选取边构建最小生成树。如果直接从小到大按顺序选取,有可能形成了环,所以对环的处理就成了核心问题。我们还是以前面的乡镇假设光纤网络为例:Kruskal算法工作步骤如下:(1) 将边进行排序。BeginEndWeightei7ch8ab10af11bg12bh12di16fg17b...
2018-04-30 21:43:42 218
转载 图论(八)最小生成树
一个正在进行信息化建设的国家级贫困县,需要在下属9个乡镇之间架设光纤网络。为减少建设难度,光纤网主要沿着这9个乡镇之间互连的公路进行铺设。这9个乡镇之间的公路网以及相互之间的距离(单位:km)如下图所示: 如果你是工程师,该怎样设计线路铺设方案?当然,你可以直接把所有的公路网都铺设上光缆,这样的线路总长度是247公里。但如果你是这样想的,那么我一定会怀疑你到底是不是一名工程师!你可以再设计一种方...
2018-04-30 21:42:49 288
转载 图论(七)哥尼斯堡七桥问题
1736年,年仅29岁的数学家欧拉来到普鲁士的古城哥尼斯堡(哲学家康德的故乡,今俄罗斯加里宁格勒)。普瑞格尔河正好从市中心流过,河中心有两座小岛,岛和两岸之间建筑有七座古桥。 欧拉发现当地居民有一项消遣活动,就是试图每座桥恰好走过一遍并回到原出发点,但从来没人成功过。欧拉证明了这种走法是不可能的。现在看来,欧拉的证明过程非常简单,但他对七桥问题的抽象和论证思想,开创了一个新的学科:图论(Grap...
2018-04-30 21:42:07 15889 1
转载 图论(六)图的两种表示方法:邻接表,邻接矩阵
如果要用图来解决问题,首先我们必须采用某种数据结构来存储和表示“图”。相对于数组、链表等来说,图的存储结构就复杂的多了。首先,图上的任何一个顶点都可以被看作是第一个顶点,任意顶点的邻接顶点之间也不存在次序关系。还记得在《图论(一)基本概念》中的“同构图”吧,图的形状可以千变万化的。因此也就无法以数据元素在内存中的物理位置来表示元素之间的关系,也就是说,图不可能用数组这样简单的顺序存储结构来表示。其...
2018-04-30 21:41:28 14433
转载 图论(五)深度优先搜索(DFS)
深度优先搜索(DFS, Depth First Search)是一个针对图和树的遍历算法。早在19世纪就被用于解决迷宫问题。对于下面的树而言,DFS方法首先从根节点1开始,其搜索节点顺序是1,2,3,4,5,6,7,8(假定左分枝和右分枝中优先选择左分枝)。 DFS的实现方式相比于BFS应该说大同小异,只是把queue换成了stack而已,stack具有后进先出LIFO(Last Input Fi...
2018-04-30 21:40:10 352
转载 图论(四)宽度优先搜索(BFS)
宽度优先搜索(BFS, Breadth First Search)是一个针对图和树的遍历算法。发明于上世纪50年代末60年代初,最初用于解决迷宫最短路径和网络路由等问题。对于下面的树而言,BFS方法首先从根节点1开始,其搜索节点顺序是1,2,3,4,5,6,7,8。 BFS使用队列(queue)来实施算法过程,队列(queue)有着先进先出FIFO(First Input First Output...
2018-04-30 21:38:04 516 1
转载 图论(三)图的遍历
图建构好后,针对具体的问题,我们常常需要通盘的读取图中的信息,包括顶点(vertex)和边(edge),以及它们之间的关系。这种读取图中所有信息的方法就是图的遍历(traversal),也称为搜索(search),就是从图中某个顶点出发,沿着一些边访问图中所有的顶点,且使每个顶点仅被访问一次。遍历是很多图论算法的基础。 遍历需要决定从哪里开始读,依照什么顺序读,要读到哪里为止。如果遍历方法与需解...
2018-04-30 21:36:52 533
转载 图论(二)树:节点,枝,根,叶,度,层/深度/高度,双亲/孩子/兄弟,祖先/后代,森林
建立了图(graph)的认识,“树”就好理解了。“树”是一种很特别的图(graph)。用图来定义“树”:任意2点之间都连通,并且没有“环”的图。下面的图就是一颗树,因此,树是图的特例。 当然,由于树是一种特别有用的数据结构,因此,它有着一些自身的特点和概念: 一、节点(node) 就是图(graph)的顶点(vertex)。如上图中的顶点:0,1,2,3,4,5,6,7,8。 二、枝(branc...
2018-04-30 21:34:27 13342 1
转载 图论(一)图:顶点,边,同构,有向/无向图,权重,路径(最短路径),环,连通图/连通分量
图(graph)是数据结构和算法学中最强大的框架之一(或许没有之一)。图几乎可以用来表现所有类型的结构或系统,从交通网络到通信网络,从下棋游戏到最优流程,从任务分配到人际交互网络,图都有广阔的用武之地。而要进入图论的世界,清晰、准确的基本概念是必须的前提和基础。下面对其最核心和最重要的概念作出说明。关于图论的概念异乎寻常的多,先掌握下面最核心最重要的,足够开展一些工作了,其它的再到实践中不断去理解...
2018-04-30 21:28:40 30629 4
转载 图论模板
该模板基于刘汝佳算法竞赛入门经典--训练指南该模板部分参考自《ACM国际大学生程序设计竞赛--算法与实现》图论常用模板转载请注明:转自http://blog.csdn.net/a15129395718新的独立博客,欢迎访问: http://zihengoi.cn[cpp] view plain copy#include <bits/stdc++.h> using namespace ...
2018-04-30 19:58:40 179
转载 5930:休息站(题意+贪心)
5930: Rest Stops时间限制: 1 Sec 内存限制: 128 MB提交: 98 解决: 39[提交][状态][讨论版][命题人:admin]题目描述Farmer John and his personal trainer Bessie are hiking up Mount Vancowver. For their purposes (and yours), the mounta...
2018-04-27 22:07:43 264
原创 5922:球染色(STL,pair,vector,multiset)
5922: 球染色时间限制: 2 Sec 内存限制: 512 MB提交: 99 解决: 31[提交][状态][讨论版][命题人:admin]题目描述有n组球,每组有两个球,权值分别为xi, yi。你需要对每组球染色,一个染成红色,一个染成蓝色。Rmax, Rmin, Bmax, Bmin分别表示红色的球中权值最大的,红色的球中权值最小的,蓝色的球中权值最大的,蓝色的球中权值最小的。你的目标是最...
2018-04-27 17:40:43 257
转载 5921: 权值(GCD,暴力)
5921: 权值时间限制: 1 Sec 内存限制: 512 MB提交: 95 解决: 31[提交][状态][讨论版][命题人:admin]题目描述给定一个长为n的正整数序列Ai。对于它的任意一个连续的子序列{Al, Al+1, ..., Ar},定义其权值W (l, r)为其长度与序列中所有元素的最大公约数的乘积,即W (l, r) = (r − l + 1) × gcd(Al, Al+1,...
2018-04-27 17:13:39 283
原创 5911: 计数问题(二维树状数组)
5911: 计数问题时间限制: 1 Sec 内存限制: 128 MB提交: 187 解决: 53[提交][状态][讨论版][命题人:admin]题目描述 一个n*m的方格,初始时每个格子有一个整数权值。接下来每次有2种操作:改变一个格子的权值;求一个子矩阵中某种特定权值出现的个数。输入第一行有两个数n,m。接下来n行,每行m个数,第i+1行第j个数表示格子(i,j)的初始权值。接下来输入一个整...
2018-04-25 13:24:54 237
原创 5910: 末尾零(技巧)
5910: 末尾零时间限制: 1 Sec 内存限制: 128 MB提交: 130 解决: 65[提交][状态][讨论版][命题人:admin]题目描述定义阶乘:n!=1*2*…*n给定n,求n!末尾的0的个数。例如:当n=10,n!=3628800,末尾0的个数为2。输入输入共一行,一个正整数n(n<=10^9)。输出输出共一行,包含一个整数,表示对应答案。样例输入15样例输出3提示...
2018-04-25 12:13:36 203
原创 5909: 货物运输(树上两点最近公共祖先LCA)
5909: 货物运输时间限制: 1 Sec 内存限制: 128 MB提交: 99 解决: 32[提交][状态][讨论版][命题人:admin]题目描述在一片苍茫的大海上,有n座岛屿,岛屿与岛屿之间由桥梁连接,所有的岛屿刚好被桥梁连接成一个树形结构,即共n-1架桥梁,且从任何一座岛屿出发都能到达其他任何一座岛屿。第i座桥梁有一个承重量wi,表示该桥梁一次性最多通过重量为wi的货物。现在有m个货物...
2018-04-25 11:41:36 245
转载 Python的语法的基本的总结(理论)
1、Python的对汉字的支持#!/usr/bin/python#coding: UTF-8 print "你好,世界";2、Python标识符在python里,标识符有字母、数字、下划线组成。在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。python中的标识符是区分大小写的。以下划线开头的标识符是有特殊意义的。以单下划线开头(_foo)的代表不能直接访问的类属...
2018-04-24 11:49:25 324
原创 6028: 白日梦(DP,期望=∑概率*数量)
6028: 白日梦时间限制: 1 Sec 内存限制: 128 MB提交: 47 解决: 26[提交][状态][讨论版][命题人:admin]题目描述SR需要相当大的睡眠量某日,他做了一个奇怪的梦,他梦见自己成为了怪物猎人,为了狩猎,他要去一个岛上住N+1天(编号为0到N)。这个岛位于太平洋中心,每天要么是晴天,要么刮台风。他到达岛的第0天是晴天。然后对于第i天,假如是晴天,那么有P(0<...
2018-04-24 11:36:58 305
原创 ubuntu 命令(常用命令置于前)
将 .ini 文件一律增加后缀 .conf 变成 .ini.conf 使用如下命令 rename 's/\.ini/.ini.conf/' ./*1一、文件/文件夹管理 ls 列出当前目录文件(不包括隐含文件) ls -a 列出当前目录文件(包括隐含文件) ls -l 列出当前目录下文件的详细信息 cd .. 回当前目录的上一级目录 cd - 回上一次所在的目录 cd ~ 或 cd 回当前用户...
2018-04-24 10:24:29 862
转载 6023: 传感器(DFS)
6023: 传感器时间限制: 1 Sec 内存限制: 128 MB提交: 50 解决: 21[提交][状态][讨论版][命题人:admin]题目描述SR最近新买了一款电子桌游这个玩具内部是M个围成一圈的传感器。每个传感器都有开和关两种工作状态,分别用1和0表示。显然,从不同的位置触发沿顺时针方向连续检查K个传感器可以得到M个长度为K的01串。SR知道这M个01串应该是互不相同的。而且这个桌游的...
2018-04-23 22:04:25 273
转载 6022: 跳马(数列增量求和&广搜打表找规律)
6022: 跳马时间限制: 2 Sec 内存限制: 128 MB提交: 161 解决: 50[提交][状态][讨论版][命题人:admin]题目描述一个骑士在一个无限大的国际象棋棋盘里跳。一开始,这个国际象棋棋盘的每一个格子都是被标记为未被走过的,而骑士一开始可以以任意的一个格子作为起点,并且这个格子标记为走过。然后,他可以以如下图的规则跳N次,每一个他所到过的格子都会被标记为已经走过。 现在...
2018-04-23 21:13:04 459
原创 6020: 机智的AmyZhi(思维)
6020: 机智的AmyZhi时间限制: 1 Sec 内存限制: 128 MB提交: 194 解决: 72[提交][状态][讨论版][命题人:admin]题目描述那年一个雨季,AmyZhi在校门外弯身买参考书。这时SiriusRen走过来,一言不合甩给她一道(自认为)很难的题给你一个数字N,求一个最小的正整数M,这个数字M的各个位的数字加上它本身之和恰好为N。没有想到AmyZhi秒解了这道题 ...
2018-04-23 20:44:26 302 1
原创 6019: 石子游戏(贪心+思维)
6019: 石子游戏时间限制: 1 Sec 内存限制: 128 MB提交: 120 解决: 34[提交][状态][讨论版][命题人:admin]题目描述在Bob学会怎样玩Nim Game之后,他打算尝试另一款看起来更为简单的石子游戏这个游戏是这样子玩的:一共有一个玩家,且一开始有N堆石头,第i堆石头有ai个石子。玩家每次只能移动一个石子从一堆到另一堆。在每次移动结束后,如果存在一个整数x(x&...
2018-04-23 20:20:39 869
原创 6016:微信群(2018江苏冬令营1)(组合数1e9)
6016: 微信群时间限制: 1 Sec 内存限制: 128 MB提交: 273 解决: 68[提交][状态][讨论版][命题人:admin]题目描述众所周知,一个有着6个人的宿舍可以有7个微信群(^_^,别问我我也不知道为什么),然而事实上这个数字可以更大,因为每3个或者是更多的人都可以组建一个群,所以6个人最多可以组建42个不同的群。现在,已知一间宿舍有N个人,并且每至少K个人都可以组建一...
2018-04-23 17:29:41 357
原创 6199: LCYZ的道路(贪心)
6199: LCYZ的道路时间限制: 1 Sec 内存限制: 128 MB提交: 78 解决: 51[提交][状态][讨论版][命题人:admin]题目描述由于在修新教学楼,LCYZ的路上出现了N个坑。为了尽快填补好这N个坑,LCYZ决定对M处地段采取封闭措施。为了求解方便,假设LCYZ的路只有一条,而且是笔直的。现在给出N个坑的位置,请你计算,最少要对多远的路段采取封闭措施?输入输入数据共两...
2018-04-23 17:07:44 186
原创 6198: JL的智力大冲浪(贪心)
6198: JL的智力大冲浪时间限制: 1 Sec 内存限制: 128 MB提交: 120 解决: 54[提交][状态][讨论版][命题人:admin]题目描述JL报名参加LCYZ的智力大冲浪节目。本次挑战赛吸引了众多参赛者,主持人为了表彰大家的勇气,先奖励每个参赛者m元。先不要太高兴!因为这些钱还不一定都是你的?!接下来主持人宣布了比赛规则:首先,比赛时间分为n个时段(n≤500),它又给出...
2018-04-23 17:05:08 218
原创 6203:JDS重走丝绸之路(DP)
6203: JDS重走丝绸之路时间限制: 1 Sec 内存限制: 128 MB提交: 72 解决: 35[提交][状态][讨论版][命题人:admin]题目描述张骞于公元前138年曾历尽艰险出使过西域。加强了汉朝与西域各国的友好往来。从那以后,一队队骆驼商队在这漫长的商贸大道上行进,他们越过崇山峻岭,将中国的先进技术带向中亚、西亚和欧洲,将那里的香料、良马传进了我国。每当人们凝望荒凉的大漠孤烟...
2018-04-22 22:15:57 215
原创 6206:YLB搭积木(将N个数归为零)(奇技淫巧)
6206: YLB搭积木时间限制: 1 Sec 内存限制: 128 MB提交: 116 解决: 62[提交][状态][讨论版][命题人:admin]题目描述LCYZ举办了一年一度的“积木大赛”。今年比赛的内容是搭建一座宽度为n的大厦,大厦可以看成由n块宽度为1的积木组成,第i块积木的最终高度需要是hi。在搭建开始之前,没有任何积木(可以看成n块高度为0的积木)。接下来每次操作,小朋友们可以选择...
2018-04-22 21:48:26 220
原创 6202:SYT的幂次方(递归输出):
6202: SYT的幂次方时间限制: 1 Sec 内存限制: 128 MB提交: 53 解决: 43[提交][状态][讨论版][命题人:admin]题目描述SYT非常喜欢研究数学。有一天在研究幂函数,突然他发现了一个规律:任何一个正整数都可以用2的幂次方表示。例如 137=2^7+2^3+2^0 同时约定方次用括号来表示,即a^b 可表示为a(b)。由此可知,137可表示...
2018-04-22 21:45:58 159
原创 6201:N个元素之和==它们的乘积(DFS+剪枝)
6201: WAR大佬的SET时间限制: 1 Sec 内存限制: 128 MB提交: 59 解决: 16[提交][状态][讨论版][命题人:admin]题目描述WAR大佬认为一个包含重复元素的集合认为是优美的,当且仅当集合中的元素的和等于他们的积。求包含n个元素的优美的集合的个数。WAR大佬当然会啊,他只是想考考你。输入一个正整数n(2<=n<=1000)输出一个数ans表示集合的...
2018-04-22 21:43:43 310
原创 6200:ZYN砍树(二分)
6200: ZYN砍树时间限制: 1 Sec 内存限制: 128 MB提交: 138 解决: 38[提交][状态][讨论版][命题人:admin]题目描述WDWY ZYN需要砍倒M米长的木材。这是一个对ZYN来说很容易的工作,因为他有一个漂亮的新伐木机,可以像野火一样砍倒森林。不过,ZYN只被允许砍倒单行树木。ZYN的伐木机工作过程如下:ZYN设置一个高度参数H(米),伐木机升起一个巨大...
2018-04-22 21:41:14 276
转载 夜深人静写算法(十二)- 模拟退火
一、引例 1、函数最值 函数最值分为函数最大值和函数最小值,最小值即定义域内函数的最小值,最大值即定义域内函数的最大值。函数最大(小)值的几何意义为函数图像的最高(低)点的纵坐标。 那么,让我们来看几种简单的情况: 1) 一次函数图一-1-1 画出函数图像如下:图一-1-2 在定义域[x1,x2]内,函数的最小值和最大值分别...
2018-04-19 18:25:26 644
转载 夜深人静写算法(十一)- 最小包围球
一、前言 1、空间点集的最小包围球 【例题1】三维空间中N(N <= 1000000)个点的集合,需要求一个球体包围所有的点,并且半径最小。算法要求给出这个球体的球心和半径大小。图一-1-1 最小包围球在计算几何、碰撞检测、人工智能以及模式识别等领域都有着广泛应用。计算机图形学中,三维空间点集的最小包围球相比三维凸包而言,可以更加快速且精确的进行碰撞检测。而...
2018-04-19 18:24:49 3546 3
转载 夜深人静写算法(十)- 有向图强连通和2-sat问题
一、引例 1、同学会 【例题1】作者有N个同学,并且N个同学中有M对关系,M对关系描述为(a,b)代表a有b的电话号码(不代表b有a的)。现在作者想举办一次同学会,虽然作者有所有人的电话号码,但是作者这个人比较抠门,不想一个一个打电话浪费电话费。所以如果a能联系到b,b能联系到c,那么作者只需要联系a(b交给a去联系,c交给b去联系即可)。联系第i个同学的电话费为C[i]。求一种方案使得作者需...
2018-04-18 23:15:46 344
转载 夜深人静写算法(九)- Dancing Links X(跳舞链)
目录 一、引例 1、买点彩票压压惊二、精确覆盖 1、精确覆盖的定义 2、穷举法 3、状态压缩 4、回溯法三、Dancing Links X算法 1、X算法 2、搜索树 3、传统矩阵存储 4、Dancing Links 5、十字交叉双向循环链表 6、额外结点的意义四、Dancing Lin...
2018-04-18 23:15:15 789
转载 夜深人静写算法(八)- 朴素贝叶斯分类
目录 一、引例 1、旅游问题二、贝叶斯理论 1、事件和概率 2、联合概率 3、条件概率 4、全概率公式 5、贝叶斯定理三、朴素贝叶斯分类实例 1、回到旅游问题 2、朴素 3、特征和类别 4、拉普拉斯平滑 5、概率修正四、朴素贝叶斯分类算法 1、分类问题 2、朴素贝叶斯...
2018-04-18 23:14:24 446
转载 夜深人静写算法(七)- 线段树
目录一、引例 1、区间最值 2、区间求和二、线段树的基本概念 1、二叉搜索树 2、数据域 3、指针表示 4、数组表示三、线段树的基本操作 1、构造 2、更新 3、询问四、线段树的经典案例 1、区间最值 2、区间求和 3、区间染色 4、矩形面积并 5、区间K大...
2018-04-18 23:13:55 385
转载 夜深人静写算法(六)- 最近公共祖先
目录 一、引例 1、树-结点间最短距离二、LCA(最近公共祖先) 1、朴素算法 2、步进法 3、记忆化步进法 4、tarjan算法 5、doubly算法三、并查集 1、"并"和"查" 2、朴素算法 3、森林实现 4、启发式合并 5、路径压缩 6、元素删除四、RMQ ...
2018-04-18 23:13:23 453
转载 夜深人静写算法(五)- 初等数论
目录一、数论基本概念 1、整除性 2、素数 a.素数与合数 b.素数判定 c.素数定理 d.素数筛选法 3、因数分解 a.算术基本定理 b.素数拆分 c.因子个数 d.因子和 4、最大公约数(GCD)...
2018-04-18 23:12:50 608
转载 夜深人静写算法(四)- 最短路和差分约束
目录 一、引例 1、一类不等式组的解二、最短路 1、Dijkstra 2、图的存储 3、链式前向星 4、Dijkstra + 优先队列 5、Bellman-Ford 6、SPFA 7、Floyd-Warshall三、差分约束 1、数形结合 2、三角不等式 3、解的存在性 ...
2018-04-18 23:12:09 446
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人