处理完输入就是很简单的一题  但是输入好难

勉强找到一种能看懂的。。。

#include<iostream>
#include<stdio.h>
#include<string>
#include<cstring>
using namespace std; #define MAX 999999999
#define N 501 int vis[N],map[N][N],dis[N];
int n,m; int Dijkstra(int start,int end)
{
int i,j,min,loc; memset(vis,,sizeof(vis));
for(i=;i<=end;i++)
dis[i]=map[start][i];
dis[start]=; for(i=;i<=end;i++)
{
min=MAX;
for(j=;j<=end;j++)
{
if(!vis[j]&&dis[j]<min)
{
min=dis[j];
loc=j;
}
}
vis[loc]=;
for(j=;j<=end;j++)
{
if(!vis[j]&&dis[loc]+map[loc][j]<dis[j])
dis[j]=dis[loc]+map[loc][j];
}
}
return dis[end];
} int main()
{
int i,j,ver,hor,d,x,y,d1,d2,ans;
char ch; //freopen("test.txt","r",stdin);
while(scanf("%d%d",&n,&m),n+m)
{
for(i=;i<=(n+)*(m+);i++)//共有(n+1)*(m+1)点
for(j=;j<=(n+)*(m+);j++)
map[i][j]=MAX; ver=;hor=; //若图中2*2的 则是3*3,节点是1-9,map[1][4]代表第一行指第二行的6
for(i=;i<=*n+;i++)
{
for(j=;j<=m+!(i&);j++)//偶数多一个输入
{
scanf("%d %c",&d,&ch);
if(d==)// 如果d为0,表示此路不通
ch=; if(i&)//奇数 横向的路
{
x=j+(m+)*(hor-);
y=x+;//横向的始终是[x][x+1]
d1=(ch=='*'||ch=='>')?/d:MAX;
d2=(ch=='*'||ch=='<')?/d:MAX;
}
else
{
x=j+(m+)*(ver-);//纵向的是[x][x+m+1]
y=j+(m+)*ver;
d1=(ch=='*'||ch=='v')?/d:MAX;
d2=(ch=='*'||ch=='^')?/d:MAX;
}
map[x][y]=d1;
map[y][x]=d2; }
if(i&) hor++; //横向加 1
else ver++;
}
ans=Dijkstra(,(n+)*(m+));//最后点数
if(MAX==ans)
printf("Holiday\n");
else
printf ("%d blips\n",ans);
}
return ;
}

Here We Go(relians) Again HDU2722的更多相关文章

  1. HDU 2722 Here We Go(relians) Again (spfa)

    Here We Go(relians) Again Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/ ...

  2. Here We Go(relians) Again

    Here We Go(relians) Again Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...

  3. CSU 1857 Crash and Go(relians)(模拟)

    Crash and Go(relians) [题目链接]Crash and Go(relians) [题目类型]模拟 &题解: 这就是要严格的按照题意说的模拟就好了,也就是:每次添加进来一个圆 ...

  4. hdu 2722 Here We Go(relians) Again (最短路径)

    Here We Go(relians) Again Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav ...

  5. 【HDOJ】2722 Here We Go(relians) Again

    根据矩阵建图,然后求最短路径. #include <cstdio> #include <cstring> #include <cstdlib> #define L ...

  6. HDU 2722 Here We Go(relians) Again

    最短路,建图太麻烦,略过…… #include <cstdio> #include <cstring> #include <queue> const int INF ...

  7. HDU 2722 Here We Go(relians) Again (最短路)

    题目链接 Problem Description The Gorelians are a warlike race that travel the universe conquering new wo ...

  8. HDU--2722

    原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2722 分析:简单最短路,读入数据烦. #include<iostream> #includ ...

  9. POJ 3653 &amp; ZOJ 2935 &amp; HDU 2722 Here We Go(relians) Again(最短路dijstra)

    题目链接: PKU:http://poj.org/problem? id=3653 ZJU:problemId=1934" target="_blank">http ...

随机推荐

  1. 《深入理解java虚拟机》第二章 Java内存区域与内存溢出异常

    第二章 Java内存区域与内存溢出异常 2.2 运行时数据区域  

  2. luogu 1030 求先序遍历

    此题给出中序遍历和后序遍历后的序列,乍一看确乎想不出法子解决,毕竟是逆向思维: 但是后序遍历的特殊性质 son1,son2,x 使得后序的末尾便是根节点,再由中序天然的递归性质便可递归输出,用下fin ...

  3. HDU4738 Caocao's Bridges【强连通】

    题意: 曹操有N个岛,这些岛用M座桥连接起来,每座桥有士兵把守(也可能没有),周瑜想让这N个岛不连通,但只能炸掉一座桥,并且炸掉一座桥需要派出不小于守桥士兵数的人去,桥的守兵数为0时,也需要派出一个人 ...

  4. Eclipse文件路径

    经常我们需要读取某个文件,一般情况下,在Eclipse工程中,路径为./src/....

  5. 【BARTS计划】【Share_Week1】社交产品思考

    Share:每周分享篇有观点和思考的技术文章   社交梦是每个互联网大厂都在做的,好像大家都默认了一种说法:没有社交功能的产品是不完整的,不做社交产品的公司是缺少战略眼光的.但就目前来看,微信的社交霸 ...

  6. LOJ 2567: 洛谷 P3643: bzoj 4584: 「APIO2016」划艇

    题目传送门:LOJ #2249. 题意简述: 有 \(n\) 个位置,第 \(i\) 个位置可以填在 \([a_i,b_i]\) (\(1\le a_i\le b_i\le 10^9\))之间的整数, ...

  7. js实现页面遮罩层,并且阻止页面body滚动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. Ubuntu Eclipse C++运行问题:launch failed.Binary not found

    在Ubuntu下的Eclipse C++环境出现launch failed.Binary not found问题时,可采用如下解决方案: (1)首先检查系统中是否成功安装g++.如果console输出 ...

  9. Javascript之BOM与DOM讲解

    一.Javascript组成 JavaScript的实现包括以下3个部分: ECMAScript(核心) 描述了JS的语法和基本对象. 文档对象模型 (DOM) 处理网页内容的方法和接口 浏览器对象模 ...

  10. vue首次赋值不触发watch

    可通过其immediate 属性进行配置,默认为false watch:{ "aaa":{ immediate:true, handler:function(){ } }