NYOJ WAJUEJI which home strong!
来源:互联网 发布:海外网络推广靠谱的吗 编辑:程序博客网 时间:2024/04/29 11:10
WAJUEJI which home strong!
时间限制:1000 ms | 内存限制:65535 KB
难度:2
- 描述
在一个山沟里,姐弟俩同时考上了大学。但由于家里拮据,所以这并不是什么好消息。父亲对孩子说:我就是砸锅卖铁也要把你们姐俩供出来。 当时的姐姐已经决定放弃上学的机会。 没想到第二天天还没亮,弟弟就偷偷带著几件破衣服和几个乾巴馒头走了,在姐姐枕边留下一个纸条: 姐,你别愁了,考上大学不容易,我出去打工供你。弟。 姐姐握著那张字条,趴在炕上,失声痛哭。 那一年,弟弟17岁,姐姐20岁。 姐姐用父亲满村子借的钱和弟弟在工地裏搬水泥挣的钱终於读到了大三。 一天姐姐正在寝室里看书,同学跑进来对姐姐说,有个老乡在找你。姐姐很纳闷,走出去后,远远地看见弟弟,穿著满身是水泥和沙子的工作服。姐姐说,你怎么和我同学说你是我老乡啊? 他笑著说,你看我穿的这样,说是你弟,你同学还不笑话你? 姐姐鼻子一酸,眼泪就落了下来。弟弟赶忙为姐姐擦掉眼泪,说:姐,你别哭,我这次来是想让你帮我打听一下,学挖掘机哪家强?
在你的帮助下,弟弟踏上了去蓝翔的路。
那么问题就来了。
- 输入
- 第一个数T,T组测试数据。
两个数 n, m; ( 0< n , m <= 100 ) 表示一个h行m列的二维地图。
接下来n行每行m 个字符。
‘s’ 表示弟弟目前所在位置。
‘# ’表示此处为一座山。为了节省体力,不从此处通行。
从‘A’-‘Z’表示各地的经济水平,对应1-26,路过对应字符的地区需要交对应的生活费。
‘l’表示蓝翔技校的所在地。
s 与 l 均为小写字母。
弟弟只能走四个方向。 - 输出
- 输出一个数表示弟弟到达蓝翔需要的生活费最小是多少。
如果不能到达,输出 -1。 - 样例输入
33 5#sVGFA##ZAlCDBC3 3sABABSABl3 3s#B###ABl
- 样例输出
484-1
- 来源
- 流年
思路 :简单的广搜加一优先队列;
#include<stdio.h>#include<string.h>#include<queue>#include<algorithm>using namespace std;char map[120][120];int book[120][120],n,m,flag;int d[4][2]={0,1,0,-1,1,0,-1,0};struct note{int x;int y;int time; friend bool operator<(note a,note b) { return a.time>b.time; } }Q;void dfs(int x,int y){ priority_queue <note> Q; note p,q; p.x=x; p.y=y; p.time=0; Q.push(p); while(!Q.empty()) { p=Q.top(); q=p; Q.pop(); for(int i=0;i<4;i++) { int tx=p.x+d[i][0]; int ty=p.y+d[i][1]; if(tx<0||ty<0||tx>=n||ty>=m||map[tx][ty]=='#'||book[tx][ty]) continue; book[tx][ty]=1; if(map[tx][ty]=='l') { printf("%d\n",p.time); flag=1; break; } q.x=tx; q.y=ty; q.time=p.time+map[tx][ty]-'A'+1;Q.push(q); } if(flag) break; } return ;}int main(){int t;scanf("%d",&t);while(t--){memset(book,0,sizeof(book));scanf("%d %d",&n,&m);int x,y;flag=0;for(int i=0;i<n;i++){scanf("%s",map[i]);for(int j=0;j<m;j++)if(map[i][j]=='s'){x=i;y=j;}}book[x][y]=1;dfs(x,y);if(!flag) printf("-1\n"); } return 0; }
阅读全文
0 0
- NYOJ WAJUEJI which home strong!
- nyoj 1100 WAJUEJI which home strong!
- NYOJ 1100 WAJUEJI which home strong!
- NYOJ--1100--WAJUEJI which home strong!
- nyoj--1100--WAJUEJI which home strong!(bfs)
- NYOJ 1100-WAJUEJI which home strong!【bfs】
- WAJUEJI which home strong! nyoj 1100
- NYOJ--1100--WAJUEJI which home strong!
- WAJUEJI which home strong!
- WAJUEJI which home strong!
- WAJUEJI which home strong!
- WAJUEJI which home strong!
- WAJUEJI which home strong!
- WAJUEJI which home strong!
- WAJUEJI which home strong!
- WAJUEJI which home strong!
- nyoj-1100-广搜+优先队列-WAJUEJI which home strong!
- NYOJ--1100 WAJUEJI which home strong!【BFS,优先队列】
- Struts2拦截器的使用 (详解)
- Sql语句中IN和exists的区别及应用
- AAC ADTS格式分析
- Meteor Shower POJ
- 尝试 docker
- NYOJ WAJUEJI which home strong!
- 快学习使用Linux吧,避免勒索病毒大肆入侵
- 黑白点匹配问题
- 继承
- jQuery使用JSONP实现跨域获取数据的三种方法详解
- poj3126 Prime Path(bfs+40入口+素数判定)
- arcgis js 4.3的feature怎样绑定click事件??
- CSS的transform属性
- [THUSC2017]北京5日游记