less than 1 minute read

문제링크

다시 한번 더 풀어보기.!

파이썬

def solution(park, routes):

    x,y =0,0
    
    for i in range(len(park)):
        for j in range(len(park[i])):
            if park[i][j] =='S':
                x,y = i,j
    op = {'N':(-1,0), 'S':(1,0),'E':(0,1),'W':(0,-1)}
    
    for i in routes:
        dx,dy = op[i.split()[0]]
        n = int(i.split()[1])
        
        xx,yy = x,y
        canmove = True
        
        for _ in range(n):
            nx = xx+dx
            ny = yy+dy
            
            if 0<=nx < len(park) and 0<=ny < len(park[0]) and park[nx][ny] != 'X':
                canmove = True
                xx,yy = nx,ny
            else:
                canmove = False
                break
        if canmove ==True:
            x,y = nx,ny
    return(x,y)
        

카테고리:

업데이트:

댓글남기기