https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWWxqfhKAWgDFAW4
내 풀이:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
N = int(input())
def frog(word):
cnt_c = 0
cnt_r = 0
cnt_o = 0
cnt_a = 0
cnt_k = 0
result = 0
for i in word:
if i == "c":
cnt_c += 1
elif i == "r":
cnt_r += 1
elif i == "o":
cnt_o += 1
elif i == "a":
cnt_a += 1
else:
cnt_k += 1
if not cnt_c >= cnt_r >= cnt_o >= cnt_a >= cnt_k:
return -1
else:
frogs = max([cnt_c, cnt_r, cnt_o, cnt_a, cnt_k]) - min([cnt_c, cnt_r, cnt_o, cnt_a, cnt_k])
if frogs > result:
result = frogs
if not cnt_c == cnt_r == cnt_o == cnt_a == cnt_k:
return -1
return result
for i in range(N):
word = input()
print("#{} {}".format(i+1, frog(word)))
|
각각의 문자 c, r, o, a, k는 문자열이 끝날 때 모두 같은 갯수가 있어야만 하며 어떤 순간에라도 c≥r≥o≥a≥k 를 만족해야 한다는 사실로 조건문을 작성하였다.
파이썬으로 풀어보는 백준 14888번: 연산자 끼워넣기 (0) | 2020.01.21 |
---|---|
파이썬으로 풀어보는 백준 2580번: 스도쿠 (0) | 2020.01.20 |
백준 2108번: 통계학 (0) | 2020.01.17 |
파이썬으로 풀어보는 백준 9663번: N-Queen (0) | 2020.01.15 |
파이썬으로 풀어보는 백준 15649번 N과 M (0) | 2020.01.15 |
댓글 영역