321
社区成员




开会了!作为一个集体,开会的时候桌子当然是需要和老大相邻的!(老大可能坐在桌子上边) 小艺被分配到排桌椅的活,可是小艺的力气都用在吃上了,怎么可能搬动这些桌椅呢。 她决定用现有的布局当作是会议座位安排。 每个桌子分配一个人。相邻桌子不同的桌子颜色不同。 小艺想知道选择某个桌子之后老大身边能围多少人?
注意审题,boss 就在桌子上,没有指定 boss 的位置和所属字符。就当桌子是 boss 好了。换个理解方式:组队打 boss 去了,每个字符表示一个人,特定字符表示 boss,问围着这个 boss 的有多少人。
这里没有考虑比如同一个字符不连续的情况,如果有这个用例的话,自行调整下即可。
n,m,c = input().split()
n,m = map(int,(n,m))
arr = [input() for _ in range(n)]
table = []
for i in range(n):
for j in range(m):
if arr[i][j] == c:
table.append((i,j))
z = set()
for pos in table:
for r in ((0,1),(0,-1),(1,0),(-1,0)):
if n > pos[0] + r[0] >= 0 \
and m > pos[1] + r[1] >= 0 \
and (pos[0] + r[0],pos[1] + r[1]) not in table \
and arr[pos[0] + r[0]][pos[1] + r[1]] != '.':
z.add(arr[pos[0] + r[0]][pos[1] + r[1]])
print(len(z))