zoukankan      html  css  js  c++  java
  • 东方辉针城(深度优先搜索)

    东方辉针城

    题目描述:
    将于5月26日发售的东方辉针城在东方吧中引起了很多关注…
    这个游戏是这样的,需要你操控一名角色,去和其他的杂鱼和boss决战。而对方和你的攻击的手段都是弹幕。在游戏中,你需要躲避他人的弹幕,并发射出自己的弹幕来攻击对方。本题中,为简单起见,只考虑对方发射的弹幕。
    假设主角始终处于画面低端,将每秒与主角出现在一排的弹幕进行叠加,总共游戏进行了T秒,可以形成一个(T+1)×WIDTH大小的字符矩阵,“.”表示该点为空,“*”表示该点有至少一颗子弹。
    现在告诉你主角的初始位置,求能否不中弹经过这T秒的弹幕,和操作的步骤。(主角不会⑨的)
    题目认为抵达最后一行即视为通过,如果有多种不同的选择可以抵达最后一行请优先向左,其次不动,最后向右;题目保证数据合法且初始位置无弹幕。
    输入描述:
    输入数据包括T+3行。
    第1行为两个正整数T和WIDTH,分表表示游戏进行的时间和屏幕的宽度。
    第2行为一个正整数S,为初始的位置。
    第3~T+3行每行包括WIDTH个字符,表示该点的状态。
    输出描述:
    第1行为一个字符串“Yes”或者“No”。表示能否不中弹通过此区域。
    第2行为一个字符串,如果出现中弹则不输出。表示通过T秒的操作,“L”表示向左移动一个格子,“R”表示向右移动一个格子,“N”表示不动。
    样例输入:
    8 5
    3
    …..
    …..
    ..*
    ..*
    ..*
    ..*
    *.*
    …..
    …..
    样例输出:
    Yes
    NRNNNNLL
    数据范围及提示:
    1≤T≤1000, 1≤WIDTH≤100

    #include<iostream>
    using namespace std;
    
    int n,m,s,x[3]={-1,0,1},move[1001];
    char map[1001][101];
    bool flag;
    
    void search(int yy,int xx)
    {
        if(yy>n){flag=1;cout<<"Yes"<<endl;}
        else
        for(int i=0;i<3;i++)
        {
            if(map[yy+1][xx+x[i]]=='.')
            {
                move[yy]=x[i];
                search(yy+1,xx+x[i]);
            }
            if(flag) return;
        }
    }
    
    int main()
    {
        cin>>n>>m>>s;
        for(int i=1;i<=m;i++) map[n+1][i]='.';
        for(int i=1;i<=n+1;i++)
          for(int j=1;j<=m;j++)
          cin>>map[i][j];
     search(1,s);
        if(flag)
        {
            for(int i=1;i<=n;i++)
            {
                if(move[i]==0) cout<<"N";
                if(move[i]==1) cout<<"R";
                if(move[i]==-1) cout<<"L";
            }
        }
        else cout<<"No";
        return 0;
    }
  • 相关阅读:
    centos 安装 TortoiseSVN svn 客户端
    linux 定时任务 日志记录
    centos6.5 安装PHP7.0支持nginx
    linux root 用户 定时任务添加
    composer 一些使用说明
    laravel cookie写入
    laravel composer 安装指定版本以及基本的配置
    mysql 删除重复记录语句
    linux php redis 扩展安装
    linux php 安装 memcache 扩展
  • 原文地址:https://www.cnblogs.com/cax1165/p/6070931.html
Copyright © 2011-2022 走看看