ZOJ-2165
来源:互联网 发布:淘宝美工要学多久 编辑:程序博客网 时间:2024/04/30 03:50
简单BFS,现在对最基本的BFS应该理解了,感觉比DFS简单多了。。
import sysstdin = sys.stdindef get_adj(a, i, j): r = [] w = len(a[0]) h = len(a) if i - 1 >= 0 and a[i - 1][j] == '.': r.append([i - 1, j]) if i + 1 < h and a[i + 1][j] == '.': r.append([i + 1, j]) if j - 1 >= 0 and a[i][j - 1] == '.': r.append([i, j - 1]) if j + 1 < w and a[i][j + 1] == '.': r.append([i, j + 1]) return r while(True): wh = stdin.readline().strip().split() w = int(wh[0]) h = int(wh[1]) if(w == 0 and h == 0): break a = [] for i in range(0, h): s = stdin.readline().strip() index = s.find('@') if index >= 0: bi = i bj = index a.append(list(s)) queue = [[bi, bj]] a[bi][bj] = '#' total = 1 while(len(queue) > 0): point = queue[0] del queue[0] adjs = get_adj(a, point[0], point[1]) for adj in adjs: a[adj[0]][adj[1]] = '#' queue.append(adj) total += 1 print total
0 0
- ZOJ-2165
- zoj--2165
- zoj 2165 dfs
- ZOJ-2165(DFS)
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- ZOJ
- 【UI设计】time倒计
- HighCharts之2D柱状图
- 《深入浅出 Java Concurrency》目录
- windows网络编程学习笔记一
- poj2253-我的第一篇floyd
- ZOJ-2165
- PAT1055. The World's Richest
- adb命令安装和卸载apk文件
- oracle 聚组函数
- JSONObject与JSONArray的使用
- 内存泄露和内存溢出区别
- 闲扯LUA之一
- 最长不重复子串
- 继承