全球变暖(蓝桥杯18I)

cpp 复制代码
#include<iostream>
#define D 7
using namespace std;
char map[D][D];
int x[] = { -1,1,0,0 };
int y[] = { 0,0,1,-1 };
void dfs(int a,int b) {
	map[a][b] = '*';
	for (int i = 0; i < 4;i++) {
		int nx = a + x[i];
		int ny = b + y[i];
		if (map[nx][ny] == '#') {
			dfs(nx,ny);
		}
	}
}
int cheak_Num() {
	int cnt = 0;
	for (int i = 0; i < D;i++) {
		for (int j = 0; j < D;j++) {
			if (map[i][j] == '#') {
				dfs(i,j);
				cnt++;
			}
		}
	}
	return cnt;
}
void drown() {
	for (int i = 0; i < D;i++) {
		for (int j = 0; j < D; j++) {
			if (map[i][j] == '#') {
				int cnt = 0;
				for (int z = 0; z < 4;z++) {
					int nx = i + x[z];
					int ny = j + y[z];
					if (map[nx][ny] == '#' || map[nx][ny] == '*') {
						cnt++;
					}
				}
				if (cnt < 4) {
					map[i][j] = '*';
				}
			}
		}
	}
}
int main() {
	for (int i = 0; i < D;i++) {
		for (int j = 0; j < D;j++) {
			cin >> map[i][j];
			getchar();
		}
	}
	int bf = cheak_Num();
	drown();
	int last = cheak_Num();
    cout<<(bf - last;
	return 0;
cpp 复制代码
#include<iostream>
using namespace std;
bool flag;
char a[1010][1010];
int cnt = 0;
int n;
int dx[4] = { 1,-1,0,0 };
int dy[4] = { 0,0,1,-1 };
int ans = 0;
int rans = 0;
void dfs(int x,int y) {
	if (a[x][y] != '#') {
		return;
	}
	if (x>=n||x<0||y>=n||y<0) {
		return;
	}
	if (!flag) {
		cnt = 0;
		for (int i = 0; i < 4;i++) {
			int nx = x + dx[i];
			int ny = y + dy[i];
			if (nx < n&& nx>=0&&ny<n&&ny>=0&& a[nx][ny] != '.') {
				cnt++;
			}
		}
		if (cnt == 4) {
			ans++;
			flag = true;
		}
	}
	a[x][y] = '*';
	for (int i = 0; i < 4; i++) {
		int nx = x + dx[i];
		int ny = y + dy[i];
		dfs(nx, ny);
	}
}
int main() {
	cin >> n;
	for (int i = 0; i < n;i++) {
		for (int j = 0; j < n;j++) {
			cin >> a[i][j];
		}
	}
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < n; j++) {
			if (a[i][j] == '#') {
				rans++;
				flag = false;
				dfs(i,j);
			}
		}
	}
	return 0;
}
相关推荐
XiaoYu1__6 分钟前
算法进阶·其一:用SCC、Tarjan算法与缩点思想解决有向图的连通关系及2-SAT问题的拓展
算法
小O的算法实验室8 分钟前
AAAI-26,全局相关性学习:通过谱图神经网络增强进化算法
神经网络·学习·算法
段一凡-华北理工大学14 分钟前
AI推动工业智能化转型~系列文章07:分类与诊断算法体系:故障识别的完整工具箱
数据库·人工智能·算法·机器学习·分类·数据挖掘·高炉炼铁智能化
简信CRM16 分钟前
适合离散制造中小工厂 MES 系统推荐
算法·机器学习·制造
AKA__Zas17 分钟前
芝士算法(前缀和2.0)
java·数据结构·算法·leetcode·哈希算法·学习方法
皓月斯语31 分钟前
B3867 [GESP202309 三级] 小杨的储蓄 题解
c++·算法·题解
半夢半醒11 小时前
[原创]《C#高级GDI+实战:从零开发一个流程图》第章:增加菱形、平行四边形、圆角矩形,文本居中显示
算法·c#·流程图
Jerry1 小时前
LeetCode 90. 子集 II
算法
机器学习之心1 小时前
CCD实验设计+SVM代理建模+改进NSGA-II工艺参数多目标优化,MATLAB代码
算法·支持向量机·matlab·多目标优化
SOLECA_1 小时前
Ascend C 算子实战(二)|SigmoidCustom 逐元素激活算子完整开发指南
算法