当前位置: 首页 > news >正文

锦州网站建设怎样个人免费推广网站

锦州网站建设怎样,个人免费推广网站,搜索引擎优化的核心及内容,17一起做网站童装描述 定义一个二维数组 N*M ,如 5 5 数组下所示: int maze[5][5] { 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, }; 它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或…

描述

定义一个二维数组 N*M ,如 5 × 5 数组下所示:


int maze[5][5] = {
0, 1, 0, 0, 0,
0, 1, 1, 1, 0,
0, 0, 0, 0, 0,
0, 1, 1, 1, 0,
0, 0, 0, 1, 0,
};


它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的路线。入口点为[0,0],既第一格是可以走的路。

数据范围: 2≤n,m≤10  , 输入的内容只包含  0≤val≤1 

输入描述:

输入两个整数,分别表示二维数组的行数,列数。再输入相应的数组,其中的1表示墙壁,0表示可以走的路。数据保证有唯一解,不考虑有多解的情况,即迷宫只有一条通道。

输出描述:

左上角到右下角的最短路径,格式如样例所示。

示例1

输入:

5 5
0 1 0 0 0
0 1 1 1 0
0 0 0 0 0
0 1 1 1 0
0 0 0 1 0

输出:

(0,0)
(1,0)
(2,0)
(2,1)
(2,2)
(2,3)
(2,4)
(3,4)
(4,4)

示例2

输入:

5 5
0 1 0 0 0
0 1 0 1 0
0 0 0 0 1
0 1 1 1 0
0 0 0 0 0

输出:

(0,0)
(1,0)
(2,0)
(3,0)
(4,0)
(4,1)
(4,2)
(4,3)
(4,4)

说明:

注意:不能斜着走!!   
import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextInt()) { // 注意 while 处理多个 caseint a = in.nextInt();int b = in.nextInt();int[][] array = new int[a][b];for (int i=0; i<a; i++) {for (int j=0; j<b; j++) {array[i][j] = in.nextInt();}}getRes1(array);}}public static void getRes1(int[][] array) {int dS = array.length;int rS = array[0].length;int[][] res = new int[dS][rS];Obj [][] objs = new Obj[dS][rS];Obj start = Obj.build(0, 0);start.before = null;objs[0][0] = start;// 消息队列Queue<Obj> queue = new LinkedList<>();queue.add(start);int[] chooses = {0, 1, 2, 3};while (!queue.isEmpty()) {Obj obj = queue.poll();// 已经存在数据的元素不允许被覆盖if (objs[obj.d][obj.r] == null) {objs[obj.d][obj.r] = obj.before;}if (obj.equals(dS-1, rS-1)) {break;}for (int i=0; i<chooses.length; i++) {switch(i) {case 0:if (obj.r+1<rS && array[obj.d][obj.r+1]==0) {Obj tmp = Obj.build(obj.d, obj.r+1);tmp.before = obj;queue.add(tmp);}break;case 1:if (obj.d+1<dS && array[obj.d+1][obj.r]==0) {Obj tmp = Obj.build(obj.d+1, obj.r);tmp.before = obj;queue.add(tmp);}break;case 2:if (obj.r-1>=0 && array[obj.d][obj.r-1]==0) {Obj tmp = Obj.build(obj.d, obj.r-1);tmp.before = obj;queue.add(tmp);}break;case 3:if (obj.d-1>=0 && array[obj.d-1][obj.r]==0) {Obj tmp = Obj.build(obj.d-1, obj.r);tmp.before = obj;queue.add(tmp);}break;}}}String s = "";if (objs[dS-1][rS-1] != null) {int i=dS-1, j=rS-1;s = "("+i+","+j+")\n";boolean bool = true;while (bool) {int d=objs[i][j].d;int r=objs[i][j].r;s = "("+d+","+r+")\n" + s;if ((d==0 && r==0)) {bool = false;}else {i = d;j = r;}}// s = "("+0+","+0+")\n"+s;System.out.println(s);}}public static class Obj {int d;int r;Obj before;public static Obj build(int d, int r) {Obj o = new Obj();o.d = d;o.r = r;return o;}public boolean equals(int d, int r) {return this.d==d && this.r==r;}}
}

 

            // 已经存在数据的元素不允许被覆盖,顺序应该是由下往上
            if (objs[obj.d][obj.r] == null) {
                objs[obj.d][obj.r] = obj.before;
            }

http://www.ds6.com.cn/news/79461.html

相关文章:

  • 学做ps的网站网站怎么优化搜索
  • 在运行 打开wordpress网站seo查询工具
  • 网站seo 工具google站长工具
  • 鲜花网站数据库建设重庆森林电影简介
  • 多个织梦dedecms网站怎么做站群搜索引擎yandex入口
  • 网页设置背景图片武汉seo优化代理
  • 网站ip域名查询百度识别图片找图
  • 东莞工业设计公司优质的seo快速排名优化
  • 成都专业建网站公司国外seo
  • 微信小程序可以做视频网站吗2021年经典营销案例
  • 开源企业cms建站系统潍坊网站建设平台
  • 教育网站怎么做广告投放怎么做
  • 网站框架有哪些百度导航和百度地图
  • 网站开发wbs实例电商代运营公司十强
  • 东莞长安做网站班级优化大师官方免费下载
  • 衡水哪儿专业做网站百度账号是什么
  • 做地方旅游网站目的意义免费的短视频app大全下载
  • 建立网站费用怎么做会计分录营销方法有哪几种
  • 上海网站制作多少钱爱站网综合查询
  • 如何重启网站服务器网络热词有哪些
  • 东营网站建设哪家好杭州seo网站优化
  • 湖北平台网站建设哪里好无线网络优化
  • 怎么做网站加盟seo网站推广的主要目的包括
  • wordpress 滚动bannerseo综合查询站长工具关键词
  • wordpress 广告播放器最好的优化公司
  • 肇庆网站建设方案咨询网站优化包括
  • 网站建设全包专业定制开发一个app价目表
  • 青岛市做网站优化牛奶软文广告营销
  • 定西市党政廉风建设网站上海百度seo
  • 网络代理在哪里设置上海seo网站策划