对拍,感谢@Queue_Hao 这位大佬
查看原帖
对拍,感谢@Queue_Hao 这位大佬
638753
QWQ_Xiari楼主2023/7/3 15:39
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
long long k[3],t,n,m,maxx,x2,y2,x3,y3,aa[10000][10000],aa1[10000][10000],can=0,qw;
char a[10000][10000];
void bfs(int xx,int yy) {//测量图的可用性
    //cout<<xx<<" "<<yy<<endl;

    if(yy==y2&&xx==x2) {
        qw=1;
    } else {
        if(can==0) {
            if(aa[xx+1][yy]==1) {
                aa[xx+1][yy]=0;
                bfs(xx+1,yy);
                aa[xx+1][yy]=1;
            }
        }
        if(can==0) {
            if(aa[xx][yy+1]==1) {
                aa[xx][yy+1]=0;
                bfs(xx,yy+1);
                aa[xx][yy+1]=1;
            }
        }
        if(can==0) {
            if(aa[xx-1][yy]==1) {
                aa[xx-1][yy]=0;
                bfs(xx-1,yy);
                aa[xx-1][yy]=1;
            }
        }
        if(can==0) {
            if(aa[xx][yy-1]==1) {
                aa[xx][yy-1]=0;
                bfs(xx,yy-1);
                aa[xx][yy=-1]=1;
            }
        }
    }
}
void kl() { //建图

}

int main() {
    unsigned seed;
    seed = time(0);
    srand(seed);
    cin>>n>>m;
    system("cls");
    while(qw!=1) {
        for(int i=1; i<=n; i++) {
            for(int j=1; j<=m; j++) {
                int yyy=rand()%2+1;
                if(yyy==1) {
                    aa1[i][j]=aa[i][j]=1;

                } else {
                    aa1[i][j]=aa[i][j]=0;
                }
            }
        }
        aa1[x3][y3]=aa1[x2][y2]=1;
        x3=1;
        x2=n;
        y3=1;
        y2=m;
        bfs(x3,y3);
    }
    int yuu=rand()%5+1;

    for(int i=1; i<=n; i++) {
        for(int j=1; j<=m; j++) {
            if(aa1[i][j]==0) {
                cout<<'#';
            }
            if(aa1[i][j]==1) {
                cout<<'.';
            }

        }
        cout<<endl;
    }
    return 0;
}
2023/7/3 15:39
加载中...