top of page

소스 코드 제출

공개·회원 50명

251029

'''

1. arr[x-2][y-1]

2. arr[x-1][y-2]

3. arr[x-2][y+1]

4. arr[x-1][y+2]

-------------------------왼/오

5. arr[x+2][y-1]

6. arr[x+1][y-2]

7. arr[x+2][y+1]

8. arr[x+1][y+2]

'''


arr=[]

back=-1

front=-1

qlist=[]

plist=[]

queue=[]

sum=1

n=int(input())

for i in range(n):

for j in range(n):

g=[0]*n

arr.append(g)

a, b=map(int, input().split())

c, d=map(int, input().split())

o=a-1

p=b-1


arr[o][p]=1

back+=1

qlist.append(o)

qlist.append(p)

queue.append(qlist)


dx=[-2, -1, -2, -1, 2, 1, 2, 1]

dy=[-1, -2, 1, 2, -1, -2, 1, 2]


while len(queue)!=0:

print(queue)

for i in range(front+1, back+1):

plist=queue.pop(0)

k=plist[0]

p=plist[1]

front+=1

for j in range(8):

s=k+dx[j]

r=p+dy[j]

if 0<=s<n and 0<=r<n and arr[s][r]==0:

arr[s][r]=sum

if s==c-1 and r ==d-1 :

print(sum+1)

exit(0)

queue.append([s, r])

back+=1

sum+=1


# for i in range(n):

# for j in range(n):

# print(arr[i][j], end=' ')

# print()



# arr=[]

# queue=[]

# back=-1

# front=-1

# qlist=[]

# plist=[]

# sum=2

# n=int(input())

# for i in range(n):

# c=[0]*n

# arr.append(c)

# x, y=map(int, input().split())

# k=x-1

# p=y-1

#

# arr[k][p]=1

# back+=1

# qlist.append(k)

# qlist.append(p)

# queue.append(qlist)


# dx = [+1,-1,0,0]

# dy = [0,0,+1,-1]

#

# while len(queue)!=0:

#

# for i in range(len(queue)):

#

# plist=queue.pop(0)

# s=plist[0]

# r=plist[1]

# front+=1

#

# for d in range(4) :

# ss = s+dx[d]

# rr =

# if 0<ss<n and 0<rr<n and arr[ss][rr]==0:

# arr[ss][rr]=sum

# queue.append([ss, rr])

# back+=1

# sum+=1

#

#

#

# for i in range(n):

# for j in range(n):

# print(arr[i][j], end=' ')

#

# print()

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