100 Accepted

# 状态 分数 耗时 内存占用
#1 Accepted 10 45ms 7.8 MiB
#2 Accepted 10 65ms 7.8 MiB
#3 Accepted 10 16ms 7.5 MiB
#4 Accepted 10 1ms 7.8 MiB
#5 Accepted 10 2ms 7.5 MiB
#6 Accepted 10 67ms 7.5 MiB
#7 Accepted 10 44ms 7.8 MiB
#8 Accepted 10 101ms 7.8 MiB
#9 Accepted 10 3ms 7.8 MiB
#10 Accepted 10 87ms 7.8 MiB

代码

#include <iostream>
using namespace std;
int main(void){
    int n,m,a[105][105]={},now=1;
    char path[105][105];
    string lqbs="LQBS";
    cin>>n>>m;
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++){
            cin>>path[i][j];
            if(path[i][j]=='L')
                a[i][j]=1;
        }
    while(1){
        int flag=0;
        for(int i=1;i<=n;i++)
            for(int j=1;j<=m;j++)
                if(a[i][j]==now){
                    if(path[i-1][j]==lqbs[now%4]){
                        a[i-1][j]=now+1;
                        flag=1;
                    }
                    else if(path[i+1][j]==lqbs[now%4]){
                        a[i+1][j]=now+1;
                        flag=1;
                    }
                    else if(path[i][j-1]==lqbs[now%4]){
                        a[i][j-1]=now+1;
                        flag=1;
                    }
                    else if(path[i][j+1]==lqbs[now%4]){
                        a[i][j+1]=now+1;
                        flag=1;
                    }
                }
        if(flag==0)
            break;
        now++;
        if(now>=(n+1)*(m+1)){
            cout<<-1;
            return 0;
        }
   }
   cout<<now/3;
}

信息

递交者
题目
LQ1074  蓝桥杯赛迷宫
比赛
蓝桥杯省赛历年真题
语言
C++ 98
递交时间
1 年前
评测时间
1 年前
分数
100
总耗时
429ms
峰值内存
7.8 MiB