⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1529.cpp

📁 这是哈尔滨工业大学acmOJ的源代码
💻 CPP
字号:
/*  This Code is Submitted by wywcgs for Problem 1529 on 2005-09-19 at 15:13:54 */ 
#include <stdio.h>

int main()
{
    int row, col, posix, posiy, arrow;
    char maze[60][60], ch, dir;
    int i, j;
    char DIRECTION[4] = {'N', 'E', 'S', 'W'};
    
    scanf("%d %d", &row, &col);
    while(getchar() != '\n')
        ;
    for(i = 0; i < row; i++) {
        gets(maze[i]);
    }
    arrow = 0;
    dir = 'N';
    scanf("%d %d", &posix, &posiy);
    while(1) {
        ch = getchar();
        if(ch == 'Q') {
            break;
        } else if(ch == 'R') {
            arrow++;
            arrow %= 4;
            dir = DIRECTION[arrow];
        } else if(ch == 'L') {
            arrow += 3;
            arrow %= 4;
            dir = DIRECTION[arrow];
        } else if(ch == 'F') {
            switch(arrow) {
                case 0:
                    if(maze[posix-2][posiy-1] == ' ') {
                        posix--;
                    }
                    break;
                case 1:
                    if(maze[posix-1][posiy] == ' ') {
                        posiy++;
                    }
                    break;
                case 2:
                    if(maze[posix][posiy-1] == ' ') {
                        posix++;
                    }
                    break;
                case 3:
                    if(maze[posix-1][posiy-2] == ' ') {
                        posiy--;
                    }
                    break;
                default:
                    break;
            }    
        }    
    }    
    printf("%d %d %c\n", posix, posiy, dir);
    
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -