top of page

소스 코드 제출

공개·회원 81명

def bfs(x, y):

global c, n, q, u, k

q.append([x, y])


w=4 #따라 잡았나?

while len(q) != 0:

temp = q.pop(0)

e, p = temp[0], temp[1] # e,p = x,y(위치)

if e != c - 1 and n[e + 1][p] == 0 :

q.append([e + 1, p])

n[e+1][p]=k

w -= 1

u += 1

if e != 0 and n[e - 1][p] == 0 : #이게 틀림

q.append([e - 1, p])

n[e-1][p]=k

w-=1

u += 1

if p != c - 1 and n[e][p + 1] == 0 :

q.append([e, p + 1])

n[e][p+1]=k

w-=1

u += 1

if p != 0 and n[e][p - 1] == 0 :

q.append([e, p - 1])

n[e][p-1]=k

w-=1

u += 1

if w == 0:

for i in range(c): # 맵 출력

for j in range(c):

print(n[i][j], end=' ')

print("")

print("w",w,"u",u)

k += 1

w = u

c = int(input())

q = [] # 리스트

n = [] # 맵

u = 2 # help w

k = 2 # 등고선 숫자

for o in range(c): # 설정(맵 제작)

l = [0] * c

n.append(l)

i, j = map(int, input().split()) # 시작 위치

n[i - 1][j - 1] = 1 #1

bfs(i - 1, j - 1)

print("")

for i in range(c): # 맵 출력

for j in range(c):

print(n[i][j], end=' ')

print()

'''

def bfs(x, y):

global c, n, q, u, k

q.append([x, y])

w=4 #따라 잡았나?

while len(q) != 0:

temp = q.pop(0)

e, p = temp[0], temp[1] # e,p = x,y(위치)

if e != c - 1 and n[e + 1][p] == 0 :

q.append([e + 1, p])

n[e+1][p]=k

w -= 1

u += 1

if e != 0 and n[e - 1][p] == 0 :

q.append([e - 1, p])

n[e-1][p]=k

w-=1

u += 1

if p != c - 1 and n[e][p + 1] == 0 :

q.append([e, p + 1])

n[e][p+1]=k

w-=1

u += 1

if p != 0 and n[e][p - 1] == 0

q.append([e, p - 1])

n[e][p-1]=k

w-=1

u += 1

if w == 0:

for i in range(5): # 맵 출력

for j in range(5):

print(n[i][j], end=' ')

print()

k += 1

w = u

c = int(input()

q = [] # 리스트

n = [] # 맵

u = 2 # help w

k = 2 # 등고선 숫자

for o in range(c): # 설정(맵 제작)

l = [0] * c

n.append(l)

i, j = map(int, input().split()) # 시작 위치

n[i - 1][j - 1] = 1 #1

bfs(i - 1, j - 1)

print("")

for i in range(c): # 맵 출력

for j in range(c):

print(n[i][j], end=' ')

print()

'''

7회 조회
주소 : 경기도 용인시 광교중앙로 302 블루 스퀘어 602호
연락처 : 031) 216 - 1546 ,     031) 215 - 1546
사업자등록번호 : 465-92-00916
​학원 등록 제 4603호
bottom of page