*문제 출처는 프로그래머스에 있습니다.
문제 제목: [1차] 다트 게임 (1단계)
문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/17682
문제 설명
나의 풀이
def solution(dartResult):
n = ''
score = []
for i in dartResult:
if i.isnumeric():
n += i
elif i == 'S':
n = int(n) ** 1
score.append(n)
n = ''
elif i == 'D':
n = int(n) ** 2
score.append(n)
n = ''
elif i == 'T':
n = int(n) ** 3
score.append(n)
n = ''
elif i == '*':
if len(score) > 1:
score[-2] = score[-2] * 2
score[-1] = score[-1] * 2
else:
score[-1] = score[-1] * 2
elif i == '#':
score[-1] = score[-1] * -1
return sum(score)
※ 알아야 할 것
isnumeric() 함수는 숫자값 표현에 해당하는 문자열까지 True로 반환한다.
(제곱근, 분수, 거듭제곱 형태의 특수문자 → True)
'코딩테스트(프로그래머스 & 백준) > 프로그래머스-Python' 카테고리의 다른 글
Programmers / 큰 수 만들기 / Python (0) | 2024.05.23 |
---|---|
Programmers / 베스트앨범 / Python (0) | 2024.05.22 |
Programmers / 다리를 지나는 트럭 / Python (0) | 2024.05.20 |
Programmers / 2 x n 타일링 / Python (0) | 2024.05.16 |
Programmers / [3차] 파일명 정렬 / Python (0) | 2024.05.14 |
*문제 출처는 프로그래머스에 있습니다.
문제 제목: [1차] 다트 게임 (1단계)
문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/17682
문제 설명
나의 풀이
def solution(dartResult):
n = ''
score = []
for i in dartResult:
if i.isnumeric():
n += i
elif i == 'S':
n = int(n) ** 1
score.append(n)
n = ''
elif i == 'D':
n = int(n) ** 2
score.append(n)
n = ''
elif i == 'T':
n = int(n) ** 3
score.append(n)
n = ''
elif i == '*':
if len(score) > 1:
score[-2] = score[-2] * 2
score[-1] = score[-1] * 2
else:
score[-1] = score[-1] * 2
elif i == '#':
score[-1] = score[-1] * -1
return sum(score)
※ 알아야 할 것
isnumeric() 함수는 숫자값 표현에 해당하는 문자열까지 True로 반환한다.
(제곱근, 분수, 거듭제곱 형태의 특수문자 → True)
'코딩테스트(프로그래머스 & 백준) > 프로그래머스-Python' 카테고리의 다른 글
Programmers / 큰 수 만들기 / Python (0) | 2024.05.23 |
---|---|
Programmers / 베스트앨범 / Python (0) | 2024.05.22 |
Programmers / 다리를 지나는 트럭 / Python (0) | 2024.05.20 |
Programmers / 2 x n 타일링 / Python (0) | 2024.05.16 |
Programmers / [3차] 파일명 정렬 / Python (0) | 2024.05.14 |