본문 바로가기
Algorithm/programmers

programmers 다트 게임

by 갈잃자 2022. 8. 13.

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

 

프로그래머스

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

programmers.co.kr


초반에 길을 잘못들어서 개고생 한 문제...

 

큰 어려움은 없고 주어진 조건들이 약~간 지저분하기 때문에 불편한 문제였다.

 

if문과 elif문으로 충분히 구현이 가능하다.

def solution(dartResult):
    answer = []
    dartResult = list(dartResult)
    ans = []

    for i in range(len(dartResult)):
        if dartResult[i] =="1" and dartResult[i+1] =='0':
            ans.append('10')
        elif dartResult[i] =='0' and dartResult[i-1] =='1':
            continue
        else:
            ans.append(dartResult[i])

    for i in range(1,len(ans)):
        if ans[i] =='S':
            answer.append(int(ans[i-1]))
        elif ans[i] =='D':
            answer.append(int(ans[i-1])**2)
        elif ans[i] =='T':
            answer.append(int(ans[i-1])**3)

        if ans[i] =='*':
            if len(answer) >=2:
                answer[-1] = answer[-1]*2
                answer[-2] = answer[-2]*2
            else:
                answer[-1] = answer[-1]*2
        elif ans[i] =='#':
            answer[-1] = answer[-1]*-1

    return sum(answer)

'Algorithm > programmers' 카테고리의 다른 글

programmers 문자열 압축  (0) 2022.08.27
programmers 성격 유형 검사하기  (0) 2022.08.26
programmers 비밀지도  (0) 2022.08.12
programmers 실패율  (0) 2022.08.10
programmers 크레인 인형뽑기 게임  (0) 2022.08.09

댓글