zoukankan      html  css  js  c++  java
  • 迷宫pascal程序

    题意

    走迷宫,要绕开障碍,走过的就不能再走,求有多少种不同的方法可以到达终点


    分析

    我们可以用深搜来做,输入时把障碍的坐标记录下来


    const
    dx:array[1..4]of longint=(0,0,1,-1);
    dy:array[1..4]of longint=(1,-1,0,0);


    var
    n,m,t,sx,sy,fx,fy,tj,i,z1,z2:longint;
    a:array[-100..100,-100..100]of longint;


    procedure search(x,y:longint);
    var
    i:longint;
    begin
        if (a[x,y]=1)or(x<1)or(x>n)or(y<1)or(y>m) then exit;
        if (x=fx)and(y=fy) then
        begin
            inc(tj);
            exit;
        end;
        a[x,y]:=1;
        for i:=1 to 4 do
        begin
            x:=x+dx[i];
            y:=y+dy[i];
            search(x,y);
            x:=x-dx[i];
            y:=y-dy[i];
        end;
        a[x,y]:=0;
    end;


    begin
        readln(n,m,t);
        readln(sx,sy,fx,fy);
        fillchar(a,sizeof(a),0);
        for i:=1 to t do
        begin
            readln(z1,z2);
            a[z1,z2]:=1;
        end;
        tj:=0;
        search(sx,sy);
        write(tj);
    end.



  • 相关阅读:
    java上传文件依赖的jar
    maven创建web项目很慢
    人才的成长与工作环境
    msdtc
    阿里巴巴的ChaosBlade
    集成电路
    晶体管
    PHPStorm如何快捷提交代码到服务器
    PHP 7新特性
    题(3)
  • 原文地址:https://www.cnblogs.com/YYC-0304/p/9500219.html
Copyright © 2011-2022 走看看