随笔分类 - 图论
摘要:Description清早6:00,Farmer John就离开了他的屋子,开始了他的例行工作:为贝茜挤奶。前一天晚上,整个农场刚经受过一场瓢泼大雨的洗礼,于是不难想见,FJ 现在面对的是一大片泥泞的土地。FJ的屋子在平面坐标(0, 0)的位置,贝茜所在的牛棚则位于坐标(X,Y) (-500 #in...
阅读全文
摘要:在利贝尔王国王都格兰赛尔正处于一场危机当中,获得消息的小约和小艾正打算赶赴那里,阻止这场阴谋。但是在出发前,他们发生了分歧,小艾希望走最短路,以尽快到达王都,而小约则希望多走不同的道路,以收集情报。后来,他们想到了折衷的办法,选一条路径,使得总路程除以道路数的商最小(即边权平均值最小)。输入:给出利...
阅读全文
摘要:旅行【问题描述】 Z 小镇是一个景色宜人的地方,吸引来自各地的观光客来此旅游观光。Z 小镇附近共有N 个景点(编号为1,2,3,…,N),这些景点被M 条道路连接着,所有道路都是双向的,两个景点之间可能有多条道路。也许是为了保护该地的旅游资源,Z 小镇有个奇怪的规定,就是对于一条给定的公路Ri,任何...
阅读全文
摘要:DescriptionThe farm has many hills upon which Farmer John would like to place guards to ensure the safety of his valuable milk-cows. He wonders how ma...
阅读全文
摘要:DescriptionFarmer John打算将电话线引到自己的农场,但电信公司并不打算为他提供免费服务。于是,FJ必须为此向电信公司支付一定的费用。 FJ的农场周围分布着N(1 3;3->2;2->5,这3对电话线杆间需要的 电话线的长度分别为4、3、9。FJ让电信公司提供那条长度为9的电话线,...
阅读全文
摘要:1.存边:可用邻接表或是vector;2.队列: 可用指针或是queue;
阅读全文
摘要:存边; 对于指针实现的邻接表:struct edge{ int from,next,to,w;}E[maxn];int head[maxn],tot=0;//head初始化为-1;void add(int x,int y,int z){ E[++tot].from=x;//头结点 E[tot].to...
阅读全文
摘要:之前写某题单词查找的时候,有用到set,晚上写codeforces#497 div2 D题有用到map感觉set,map的功能挺类似的,在此小结;这里就不具体比较相同点和不同点了,免得看起来乱七八糟的,这里分别细说;set:#include sets;(类型可为int,char,string)功能主...
阅读全文
摘要:早晨碰到了一题挺裸的最短路问题需要打印路径:vijos16351.首先说说spfa的方法:其实自己之前打的最多的spfa是在网格上的那种,也就是二维的一维的需要邻接表+queue以及对于queue的操作,自己也是醉了这里贴一个模板(不含打印路径):#include#include#include#i...
阅读全文
摘要:之前看到一题需要并查集+SPFA,然后就特别囧的发现自己SPFA这个历史遗留问题已经不知道怎么打了╮(╯▽╰)╭ 就果断挑了一题特别裸的SPFA赶紧搞搞掉,顺便自己乱YY下学SPFA的笔记,免得自己下次又逗比了SPFA是求最短路问题的一种解法解决的是单源最短路,也就是求所有点到某一个点的最短路反正自...
阅读全文
摘要:上次学floyd的时候,了解到邻接矩阵的用法这个主要是用在稠密图里,邻接表主要是用在稀疏图我记得在学floyd的时候感悟到它在其中的作用的时候,瞬间就有一种很神奇的感觉,怎么说呢,就感觉好妙的代码如下:int a[MAX][MAX];scanf("%d",&x,&y,&v);a[x][y]=v;//x:起始点;y:所连的点;v:边权值;
阅读全文
摘要:void add(int x,int y,int z){//邻接表e[tot].from=x;//头结点e[tot].to=y;//尾结点e[tot].w=z;//边权e[tot].next=head[x];head[x]=tot++;}
阅读全文