https://school.programmers.co.kr/learn/courses/30/lessons/120861

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

📝  내가 작성한 코드

def solution(keyinput, board):
    answer = []
    # 위 아래 왼쪽 오른쪽 이동방향
    dx = [0, 0, -1, 1]
    dy = [1, -1, 0, 0]
    move_type = ["up", "down", "left", "right"]
    # 초기 위치
    x,y = 0,0
    n,m = int(board[0]//2), int(board[1]//2)

    for i in keyinput:
        for move in range(len(move_type)):
            if i == move_type[move]:
                nx = x+dx[move]
                ny = y+dy[move]
	# board를 벗어나는 경우 무시한다 (음수인 경우도 비교해야 하기 때문에 절대값 함수 사용)
        if abs(nx) > abs(n) or abs(ny) > abs(m):
            continue
        # 좌표를 이동한다
        x,y = nx,ny
    
    return [x,y]

'개발 > 코딩테스트' 카테고리의 다른 글

[Softeer] 연탄 배달의 시작  (0) 2024.02.24
[Softeer] 위험한 효도  (0) 2024.02.22
[Softeer] 근무 시간  (0) 2024.02.22
[프로그래머스] 모의고사  (0) 2024.02.22
[프로그래머스] 배열 조각하기  (0) 2024.02.15

+ Recent posts