我是靠谱客的博主 凶狠飞机,这篇文章主要介绍UVA-572 油田 题解答案代码 算法竞赛入门经典第二版,现在分享给大家,希望可以做个参考。

GitHub - jzplp/aoapc-UVA-Answer: 算法竞赛入门经典 例题和习题答案 刘汝佳 第二版

AC代码

#include<stdio.h>
#include<string.h>

char str[105][105];
int flg[105][105];
int m, n, cnt;

void dfs(int a, int b) {
	int i, j;
	if(a < 0 || a >= m || b < 0 || b >= n) {
		return;
	} 
	if(str[a][b] != '@' || flg[a][b]) {
		return;
	}
	flg[a][b] = 1;
	for(i = -1; i < 2; ++i) {
		for(j = -1; j < 2; ++j) {
			dfs(a + i, b + j);
		}
	}
}

int main() {
	int i, j;
	while(scanf("%d%d", &m, &n) && m) {
		for(i = 0; i < m; ++i) {
			scanf("%s", str[i]);
		}
		memset(flg, 0, sizeof(flg));
		cnt = 0;
		for(i = 0; i < m; ++i) {
			for(j = 0; j < n; ++j) {
				if(str[i][j] == '@' && !flg[i][j]) {
					++cnt;
					dfs(i, j);
				}
			}
		}
		printf("%dn", cnt);
	}
	return 0;
} 

最后

以上就是凶狠飞机最近收集整理的关于UVA-572 油田 题解答案代码 算法竞赛入门经典第二版的全部内容,更多相关UVA-572内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(147)

评论列表共有 0 条评论

立即
投稿
返回
顶部