所以它到底错哪了!!!(疯狂 气愤 歇斯底里)
#include<bits/stdc++.h>
using namespace std;
bool vis[505][505];
char a[505][505];
int n,m,k;
int dx[4]={0,0,1,-1};
int dy[4]={1,-1,0,0};
void dfs(int x,int y){
if(a[x][y]=='#'||vis[x][y]) return;
vis[x][y]=true;
for(int i=0;i<4;i++){
int xx=x+dx[i];
int yy=y+dy[i];
if(xx<0||yy<0||xx>=n||yy>=m) continue;
dfs(xx,yy);
}
if(k){
a[x][y]='X';
k--;
}
}
int main(){
cin>>n>>m>>k;
for(int i=1;i<=n;i++){
scanf("%s",a[i]);
}
for(int i=1;i<=n&&k;i++){
for(int j=1;j<=m&&k;j++){
dfs(i,j);
}
}
for(int i=1;i<=n;i++){
printf("%s\n",a[i]);
}
return 0;
}
能运行but Unknown Error