코딩 테스트/프로그래머스

Lv2. 방문 길이

  • -
728x90
반응형

문제 보기 :  코딩테스트 연습 - 방문 길이 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 


문제

  • 정답률 : 59%


작성 코드

def solution(dirs):
    an = {}
    
    U = 0 ; D = 0 ;R = 0 ; L = 0
    location = [0,0]
    for i in dirs:
        road = str(location)
        if i == 'L':
            if location[0] == -5:
                pass
            else:
                location[0] -= 1
                a = str(location)
                road1 = a+road
                road += a
                if (road not in an) and (road1 not in an):
                    an[road]=0
                
        elif i == 'R':
            if location[0] == 5:
                pass
            else:
                location[0] += 1
                a = str(location)
                road1 = a+road
                road += a
                if (road not in an) and (road1 not in an):
                    an[road]=0
                
        elif i == 'U':
            if location[1] == 5:
                pass
            else:
                location[1] += 1
                a = str(location)
                road1 = a+road
                road += a
                if (road not in an) and (road1 not in an):
                    an[road]=0
                    
        elif i == 'D':
            if location[1] == -5:
                pass
            else:
                location[1] -= 1
                a = str(location)
                road1 = a+road
                road += a
                if (road not in an) and (road1 not in an):
                    an[road]=0
                    
    answer = len(an)
    return answer

풀이

이 반례만 해결하면 되는 문제다.

  • "LLLLLLUURRRDDLURL" /  14

한 번 왔던 길은 다시 가게 된다해도 포함시키면 안된다.

즉 '[0,1] -> [0,2]' 이렇게 이동한다고 할 때 '[0,2] -> [0,1]'이 만약 딕셔너리에 포함되어있으면 이 경로는 제외해야한다는 뜻이다!

 

320x100
728x90

'코딩 테스트 > 프로그래머스' 카테고리의 다른 글

Lv2. 주식가격  (0) 2024.08.30
Lv0. 주사위 게임 3  (3) 2024.08.28
Lv2. 스킬트리  (0) 2024.08.26
Lv1. [1차] 다트 게임  (0) 2024.08.24
Lv2. 롤케이크 자르기  (0) 2024.08.23
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.