[1차] 다트 게임-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]

2022. 10. 28. 20:04·Algorithm, 코딩테스트
728x90
반응형

문제

https://school.programmers.co.kr/learn/courses/30/lessons/17682?language=python3

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 


풀이

def solution(dartResult):
    bonus={'S':1,'D':2,'T':3}
    scores=[]
    start_idx=0 # 각 점수의 인덱스
    for i,v in enumerate(dartResult):
        if not dartResult[i-1].isdigit() and dartResult[i].isdigit():
            start_idx=i
        elif v in bonus:
            scores.append(int(dartResult[start_idx:i])**bonus[v])
        elif v=='*':
            scores[-2:]=[i*2 for i in scores[-2:]] # 해당 점수와 바로 전에 얻은 점수 2배로 함
        elif v=='#':
            scores[-1]*=-1 # 해당 점수만큼 마이너스
    return sum(scores)

Tip

  • isdigit()으로 해당 문자가 숫자인지 판단하기

TIL

  • 리스트 인덱스에서 음수를 사용할 경우 뒤에서부터 해당 인덱스 번째 원소를 의미하게 된다.
    ex) arr이 [1,2,3,4]일 때
          arr[-1]은 4
          arr[-2]는 3
  • str.isdigit(): 해당 문자열이 숫자로만 이루어졌을 경우 True, 아닐 경우 False를 반환한다.
728x90
반응형
저작자표시 비영리 (새창열림)

'Algorithm, 코딩테스트' 카테고리의 다른 글

체육복-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]  (0) 2022.10.28
로또의 최고 순위와 최저 순위-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]  (0) 2022.10.28
실패율-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]  (0) 2022.10.28
소수 만들기-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]  (0) 2022.10.28
모의고사-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]  (0) 2022.10.28
'Algorithm, 코딩테스트' 카테고리의 다른 글
  • 체육복-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]
  • 로또의 최고 순위와 최저 순위-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]
  • 실패율-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]
  • 소수 만들기-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]
20mini
20mini
개발 공부를 하며 알게 된 내용들을 기록한 블로그입니다. 댓글로 조언, 지적, 충고 등 다양한 의견들 항상 환영합니다!!
    반응형
    250x250
  • 20mini
    해시태그코딩 #coding
    20mini
  • 전체
    오늘
    어제
    • 분류 전체보기 (94)
      • Python (1)
      • Algorithm, 코딩테스트 (82)
      • Machine Learning (8)
      • 논문 리뷰 (0)
      • 그 외 공부 관련 (2)
      • 기타 (1)
  • 인기 글

  • 태그

    Python
    lv.1
    lv.2
    프로그래머스
    Machine Learning
    코딩테스트
    완전탐색
    hash
    lv.3
    알고리즘
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
20mini
[1차] 다트 게임-파이썬(Python) [프로그래머스/코딩테스트 연습/Lv.1]
상단으로

티스토리툴바