文章

27

粉丝

0

获赞

130

访问

8.3k

头像
P1564 石油储藏 答疑提问:
jsd VIP
P1564 中国科学院大学2021年机试题
发布于2025年3月12日 20:16
阅读数 143

#include<bits/stdc++.h>
using namespace std;


const int maxn = 105;
char s[maxn][maxn] = {'*'};
int visited[maxn][maxn] = {0};
int yidong[maxn][maxn] ={{-1,0},{1,0},{0,-1},{0,1}};
struct node{
	int x,y;
};
int cnt = 0;
void bfs(int i,int j){
	
	cnt++; 
	queue<node> q;
	q.push(node{i,j});
	while(!q.empty()){
	
		node p = q.front();
//		cout<<p.x<<" "<<p.y;
		q.pop();
		
		int nx,ny;
		for(int i = 0;i<4;i++){
			nx = p.x + yidong[i][0];
			ny = p.y + yidong[i][1];
			
			if(visited[nx][ny]==0&&s[nx][ny]=='@'){
				q.push(node{nx,ny});
				visited[nx][ny] = 1;
				
			}
		} 
		
	}
}
int main(){
	int m,n;
	while(cin>>m>>n){
		if(m==0) break;
		cnt = 0;
		memset(s,'*',sizeof(s));
		memset(visited,0,sizeof(visited));
		for(int i = 1;i<=m;i++){
			scanf("%s",s[i]+1);
			
		}
		for(int i = 1;i<=m;i++){
			for(int j = 1;j<=n;j++){
				if(s[i][j]=='@'&&visited[i][j]==0){
...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发