• 迷宫


    /*
    标题:迷宫
    
    X星球的一处迷宫游乐场建在某个小山坡上。
    它是由10x10相互连通的小房间组成的。
    
    房间的地板上写着一个很大的字母。
    我们假设玩家是面朝上坡的方向站立,则:
    L表示走到左边的房间,
    R表示走到右边的房间,
    U表示走到上坡方向的房间,
    D表示走到下坡方向的房间。
    
    X星球的居民有点懒,不愿意费力思考。
    他们更喜欢玩运气类的游戏。这个游戏也是如此!
    
    开始的时候,直升机把100名玩家放入一个个小房间内。
    玩家一定要按照地上的字母移动。
    
    迷宫地图如下:
    ------------
    UDDLUULRUL
    UURLLLRRRU
    RRUURLDLRD
    RUDDDDUUUU
    URUDLLRRUU
    DURLRLDLRL
    ULLURLLRDU
    RDLULLRDDD
    UUDDUDUDLL
    ULRDLUURRR
    ------------
    
    请你计算一下,最后,有多少玩家会走出迷宫? 
    而不是在里边兜圈子。
    
    请提交该整数,表示走出迷宫的玩家数目,不要填写任何多余的内容。
    
    如果你还没明白游戏规则,可以参看一个简化的4x4迷宫的解说图:
    p1.png
    */
    package test;
    
    import java.util.Arrays;
    
    public class 迷宫 {
        static int count=0;
        static int[][] check=new int[10][10];
        static char[][] arr;
        public static void main(String arg[]){
            arr=new char[][]{{'U','D','D','L','U','U','L','R','U','L'},
                                      {'U','U','R','L','L','L','R','R','R','U'},
                                      {'R','R','U','U','R','L','D','L','R','D'},
                                      {'R','U','D','D','D','D','U','U','U','U'},
                                      {'U','R','U','D','L','L','R','R','U','U'},
                                      {'D','U','R','L','R','L','D','L','R','L'},
                                      {'U','L','L','U','R','L','L','R','D','U'},
                                      {'R','D','L','U','L','L','R','D','D','D'},
                                      {'U','U','D','D','U','D','U','D','L','L'},
                                      {'U','L','R','D','L','U','U','R','R','R'}};
            for(int i=0;i<10;i++){
                for(int j=0;j<10;j++){
                    for(int k=0;k<check.length;k++){
                           Arrays.fill(check[k], 0);}
                    find(i,j);
                }
            }
             System.out.print(count);
        } 
        public static void find(int i,int j){
            while(true){    
                if(i<0||i>9||j<0||j>9){//退出条件1:走出方格 2:回到走过的方格
                    count++;
                    break;
                    }
                if(check[i][j]==1){
                    break;
                    }
                check[i][j]=1;
                switch(arr[i][j]){
                case 'U': i--;break;
                case 'L': j--;break;
                case 'R': j++;break;
                case 'D': i++;break;
                default: break;
                }
            }
            return;
        }
    
    }
  • 相关阅读:
    Remove menucool tooltip trial version
    笔记:Linux(AWS Redhat)开机启动workman进程(/etc/rc.local必须是755权限)
    workman项目设置开机自启动
    Linux应用之crontab定时任务的设置
    在aws ec2上使用root用户登录
    date_default_timezone_set()问题解决方案(PHP5.3以上的)
    Potatso Lite:[限免]ios 自由上网利器
    5+ App开发入门指南
    Nginx或Apache通过反向代理配置wss服务
    phpstudy安装redis
  • 原文地址:https://www.cnblogs.com/ljs-666/p/8595607.html
Copyright © 2020-2023  润新知