作者:ws
ws
covers
内容简介:c++
2023/07/11 16:53

c++框架

#include<bits/stdc++.h>

using namespace std; int main(){

return 0;

}

评论区

登录之后才能评论Scratch作品哦

唉,怎么说

杨景熙1 年前

第一行是两个整数N 和M,表示迷宫尺寸。 接下来N 行,每行输入 M 个字符,每个字符表示迷宫中的一个小方格。 字符的含义如下: S:起点 E:终点 -:空地,可以通过 #:障碍,无法通过

杨景熙1 年前
 continue;
    }
    dfs(nr,nc,sum+1);
}
mg[r][c]='-';
sum--;

} int main () {

cin>>n>>m;
for(int i=0; i&lt;n; i++) {
    cin>>mg[i];
    for(int j=0; j&lt;m; j++) {
        if(mg[i][j]=='S') {
            sr=i;
            sc=j;
        } else if(mg[i][j]=='E') {
            er=i;
            ec=j;
        }
    }

}
dfs(sr,sc);
if(cnt==1000)
cout&lt;&lt;-1;
else
cout&lt;&lt;cnt;
return 0;

}

杨景熙1 年前

广度优先搜索迷宫最短路径(自己写的):#include<bits/stdc++.h> using namespace std; int n,m,sr,sc,er,ec,cnt=1000; string mg[35]; int dr[]= {-1,0,1,0}; int dc[]= {0,1,0,-1}; void dfs(int r,int c,int sum=0) { mg[r][c]='#'; if(sum>=cnt) { mg[r][c]='-'; return; } if(r==er&&c==ec) { cnt=min(cnt,sum); mg[r][c]='-'; return; } for(int i=0; i<4; i++) { int nr=r+dr[i],nc=c+dc[i]; if(nr<0||nr>=n||nc<0||nc>=m||mg[nr][nc]=='#') {

杨景熙1 年前
cin>>m;
    for(int i=1; i&lt;=m; i++) {
        for(int j=1; j&lt;=m; j++) {
            cin>>a[i][j];
        }
    }

    if(dmgpd(1,1)) {
        cout&lt;&lt;&quot;YES&quot;&lt;&lt;endl;
    } else {
        cout&lt;&lt;&quot;NO&quot;&lt;&lt;endl;
    }
}

return 0;

}

杨景熙1 年前

深度优先搜索迷宫最短路径(自己写的):#include<bits/stdc++.h> using namespace std; int m; int a[40][40]; int dr[]= {-1,0,1,0}; int dc[]= {0,1,0,-1}; bool dmgpd(int r,int c) { a[r][c]=0; if(r==m&&c==m) { return true; } for(int i=0; i<4; i++) { int nr=r+dr[i],nc=c+dc[i]; if(nr>m||nr<1||nc>m||nc<1||a[nr][nc]==0) continue; if(dmgpd(nr,nc)) { return true; } } return false; } int main() { int n; cin>>n; while(n--) {

#include<bits/c++.h>

using namespace std;

int main(){

return 0;

}