自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Free Loop~~~跳动的音符

开荒~刷题~重新起航~追寻梦想~永不放弃~~~

  • 博客(13)
  • 收藏
  • 关注

原创 POJ2386 Lake Counting 图的遍历

题目大意:有一个N*M的矩阵,W表示陆地,连接方向为8个方向,问总共有多少个岛屿题解,直接用BFS遍历图即可统计出#include#include#include#includeconst int maxn=110;char s[maxn];int a[maxn][maxn],q[maxn*maxn][2],m,n;int d[8][2]={{0,1},{1,0},{-1,0

2014-12-20 22:41:47 666

转载 OI知识体系

2014-12-20 16:35:55 836

原创 POJ 3259 Wormholes 链式前向星+SPFA练习

题目大意:给出一个无向图,再给出W个虫洞,虫洞的意思就是权值为负的边,问你可否找到负权环题解:SPFA中,如果每个点进队列超过N次,就可以判断有负全环。#include#include#include#includeconst int maxn=510,inf=1000000000;int e,to[maxn*12],next[maxn*12],begin[maxn],w[max

2014-12-14 15:27:23 721

原创 POJ 1511 Invitation Cards 链式前向星+SPFA练习

题目大意:给出一个有向图,点和边都不超过1000000,求1号点到所有点的距离和+所有点到1号点的距离和。题解:1号点到其他点的距离和直接用SPFA求,再将所有边反向,求出1号点到所有点的距离和,就是所有点到1号点的距离和,因为点非常多,所有采用链式前向星存储。#include#include#include#includeconst int maxn=510,inf=100000

2014-12-14 15:16:25 801

原创 POJ2253 Frogger -DIJKSTRA || FLOYD最短路练习

题目大意:池塘里有N片荷叶,给出每片荷叶的坐标,青蛙要从X号荷叶跳到Y号荷叶,问单步最少要跳多少才能到达。题解:这道题可以采取类FLOYD的方法,要从X跳到Y,当越来越多的荷叶做为中间点来跳的时候,显然有可能单步跳的距离更短。程序如下:#include#include#includeconst int maxn=210;struct point{int x,y;}p[maxn];

2014-12-10 17:02:53 914

原创 POJ2502 Subway -DIJKSTRA最短路练习

题目大意:有个小朋友要从家里到学校,可以通过走路或者乘地铁的方式到达,走路每小时10KM,乘地铁每小时40KM,他可以走路+换乘地铁等多种方式到达,给出家,地铁站和学校的坐标,请问他到达学校的最短时间是多少分钟(四舍五入),假设没有等待地铁时间。题解:本题是一道要转换模型的最短路题,要将距离转化成时间,将家,每个地铁站,学校转换成点,最后求家到学校的最短时间,需要注意的是,地铁线不是直的,譬如

2014-12-10 16:18:45 785

原创 POJ1125 Stockbroker Grapevine -FLOYD练习题

题目大意是:有N个人,相互之间可以传递信息,但是A传给B与B传给A的时间是不一样的,一个人同时可以向多个人传递信息,时间不一样,问你把消息传给谁?可以在最短时间让消息传递给所有人。典型的FLOYD求最短路,最后找到所有人距离最大之最小那一个人,输出答案。#include#include#includeconst int maxn=110,maxint=1000000000;int

2014-12-09 00:44:20 766

原创 POJ2387 Til the Cows Come Home -DIJKSTRA 练习

题目大意是:有N个牛棚和T条边相连,每条边有个权值,问1号到N号牛棚之间的最短距离本题是又是DIJKSTRA最短路水题,注意任何两个牛棚之间可能有多条路相连,输入时先输入边,再输入点,程序如下:#include#include#includeconst int maxn=1010,maxint=1000000000;int a[maxn][maxn],d[maxn],p[maxn]

2014-12-09 00:13:14 702

原创 POJ1502 MPI Maelstrom -DIJKSTRA练习系列

本题的大意是有N个处理器,任何两个处理器之间的传输信息是需要时间的,有的处理器之间不能传输信息,给出一个处理器传输信息时间的二维矩阵的下三角,X表示不能传输,问从第一个处理器传输到所有处理器所需要的总时间。本地是典型的DIJKSTRA水题,注意输入时需要用字符串输入,程序如下:#include#include#includeconst int maxn=110,maxint=100000

2014-12-08 23:59:42 798

原创 信息学竞赛刷题建议历程

1、近10年NOIP普及组前三题——30道题练入门2、USACO全体——练基础算法3、近10年NOIP提高组全部试题——感受OI基础3.1、刘汝佳白书训练指南所有例题——打好基础4、开始SGU版切刷题——不管苦难与否直接扫荡过,这个过程一直伴随你到全国赛,最好题量破300~~5、HNOI近10年试题——感受省队难度6、WC,NOI近10年试题——感受国内金牌怎么修炼成的

2014-12-03 00:38:32 4700 3

原创 NOIP2014DAY2T2

#include#includeconst int maxn=10010,maxm=200010;int e,to[maxm],next[maxm],begin[maxn];int e1,to1[maxm],next1[maxm],begin1[maxn];int p[maxn],pd[maxn],px[maxn];int q[maxn],d[maxn];void add(int x

2014-12-02 21:21:27 723

原创 好用的链式前向星

对于已经的一个图,我们存储它的方式有很多种,其中常用的有1、邻接矩阵(建图简单,使用简单,但是遍历图时间复杂度太大)2、邻接表(建图较复杂,对于特殊的米字图时间复杂度太大)3、优化的邻接表,在我前面一片文章里有介绍,就是为每一个节点保存一个LAST数组(最后的点编号),可以极大提高建图速度http://blog.csdn.net/cnyali/article/details/416

2014-12-01 11:18:47 2090 2

原创 NOIP2014day1T2联合权值新版题解(优化的邻接表)

之前的解题报告无法过全部数据,因邻接表没有优化,统计权值方式也太暴力,做以下修改1、建邻接表时加一个数组来记录每个节点的尾指针位置2、统计每个点周围所有点权值最大的两个点3、利用x1*y1+x1*y2+x1*y3....=x1*(y1+y2+y3+...)进行简单优化加速程序如下,完爆官方所有数据:#include#includeconst int maxn=200010,

2014-12-01 00:46:28 2392

空空如也

空空如也

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

TA关注的人

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