Notice
Recent Posts
Recent Comments
Link
jyamethyst21 님의 블로그
백준 30957번 - '빅데이터 vs 정보보호 vs 인공지능' (PYTHON 풀이) 본문
문제:

입력으로 학생 수와, 빅데이터(B), 정보보호(S), 인공지능(A)에 대한 학생들의 선호도를 입력받고, 가장 크게 관심을 받는 분야를 영어로 출력하면 되는 문제이다. 만약 세 개의 분야에 대한 관심이 동일하면 SCU를, 두 개의 분야가 동일한 관심을 받고 있다면 B, S, A 순서대로 2개를 붙여서 출력하면 된다.
풀이:
N = int(input())
depart = input()
s, b, a = 0, 0, 0
for i in depart:
if i == 'S':
s += 1
elif i == 'B':
b += 1
else:
a += 1
m = max(s, b, a)
if s == b == a:
print("SCU")
elif s == m and b == m:
print("BS")
elif s == m and a == m:
print("SA")
elif b == m and a == m:
print("BA")
elif s == m:
print("S")
elif b == m:
print("B")
else:
print("A")
학생 수와 선호도를 한 줄로 이은 문자열을 입력받는다.
이후 각 분야에 대한 선호도를 체크하기 위해 변수를 선언한다. 그리고 입력받은 문자열을 하나씩 돌면서 각 분야의 문자열이 속한다면, 해당하는 분야의 변수에 1씩 더해준다.
이후 가장 큰 값을 출력해야 하기때문에 3개의 변수에 max를 사용해서 가장 큰 값을 구한 뒤, m에 넣는다.
그리고 세 개의 변수가 다 동일하면 SCU를, 3개의 변수 중 2개가 가장 큰 값인 m과 같다면 B, S, A 순서대로 출력하도록 모든 경우의 수를 전부 넣어준다. 그리고 가장 큰 값이 하나의 경우에도 대비해서 조건을 넣어주면 문제를 풀 수 있다.
'CODING 💻' 카테고리의 다른 글
| 백준 25238번 - '가희와 방어율 무시' (PYTHON 풀이) (0) | 2026.02.19 |
|---|---|
| 백준 32642번 - '당구 좀 치자 제발' (PYTHON 풀이) (0) | 2026.02.18 |
| 백준 32297번 - '문자열을 만들어요' (PYTHON 풀이) (0) | 2026.02.16 |
| 백준 1789번 - '수들의 합' (PYTHON 풀이) (0) | 2026.02.15 |
| 백준 1247번- '부호' (PYTHON 풀이) (0) | 2026.02.14 |
