728x90
반응형
백준 BAEKJOON 5211번 가단조와 다장조 [PYTHON/파이썬]
<문제 출처> (BRONZE Ⅰ)
https://www.acmicpc.net/problem/5211
5211번: 가단조와 다장조
첫째 줄에 음악이 주어진다. 음악은 {"A", "B", "C", "D", "E", "F", "G", "|"}로 이루어져 있으며, 길이는 5보다 크거나 같고, 100을 넘지 않는다. |가 연속해서 등장하거나, 문자열의 양쪽 끝에 나오는 경우
www.acmicpc.net
<풀이>
입력값을 split()을 사용하여 리스트로 변환 후
음악의 첫 음을 기준으로 가단조와 다장조의 개수를 세었다.
만약 개수가 같다면 맨 마지막 음악의 마지막 음을 기준으로
가단조와 다장조를 구별해 주면 된다.
<코드>
A_Minor = ["A", "D", "E"]
C_Major = ["C", "F", "G"]
scale = input().split("|")
A_Minor_cnt, C_Major_cnt = 0, 0
for s in scale:
if s[0] in A_Minor:
A_Minor_cnt += 1
elif s[0] in C_Major:
C_Major_cnt += 1
# 개수가 같다면 맨 마지막 음악의 마지막 음으로 구별
if A_Minor_cnt == C_Major_cnt:
if scale[-1][-1] in A_Minor:
A_Minor_cnt += 1
elif scale[-1][-1] in C_Major:
C_Major_cnt += 1
if A_Minor_cnt > C_Major_cnt:
print("A-minor")
else:
print("C-major")
728x90
반응형
'ALGORITHM > PYTHON' 카테고리의 다른 글
백준 BAEKJOON 29725번 체스 초보 브실이 [PYTHON/파이썬] (0) | 2023.09.12 |
---|---|
백준 BAEKJOON 29701번 모스 부호 [PYTHON/파이썬] (0) | 2023.09.11 |
백준 BAEKJOON 29614번 학점계산프로그램 [PYTHON/파이썬] (0) | 2023.09.05 |
[PYTHON] 프로그래머스 문자열 출력하기 (0) | 2023.09.03 |
백준 BAEKJOON 28446번 볼링공 찾아주기 [PYTHON/파이썬] (0) | 2023.08.26 |