반응형
2484 주사위 네개, 16675 두 개의 손, 17413 단어 뒤집기
2484 주사위 네개
max_prize = 0
for _ in range(int(input())):
dices = list(map(int, input().split()))
dices.sort()
# all same number
if len(set(dices)) == 1:
prize = 50000 + (dices[0] * 5000)
# two numbers
elif len(set(dices)) == 2:
if dices[1] == dices[2]:
prize = 10000 + (dices[1] * 1000)
elif dices[1] != dices[2]:
prize = 2000 + (dices[0] * 500) + (dices[2] * 500)
elif len(set(dices)) == 3:
for i in range(3):
if dices[i] == dices[i+1]:
prize = 1000 + (dices[i] * 100)
break
else:
prize = max(dices) * 100
if prize > max_prize:
max_prize = prize
print(max_prize)
16675 두 개의 손
ml, mr, tl, tr = ('SPR'.index(i) for i in input().split())
if ml == mr and (ml+2) % 3 in [tl, tr]:
print('TK')
elif tl == tr and (tl+2) % 3 in [ml, mr]:
print('MS')
else:
print('?')
- 숫자로 바꾸면 3이 1을 못이기니 어떻게 처리하나 했는데 index() 사용 후 나머지를 이용하면 편함
- 변수 여러개에 input 받으려면 튜플로 받으면 됨
17413 단어 뒤집기
# 첫번째 풀이
def revers(pre, post): # 단어 뒤집기 함수
global s
string = ""
for i in range(post, pre-1, -1):
string += s[i]
s = s[:pre] + string + s[post+1:]
s = input()
v = 0
pre_idx = 0
post_idx = 0
check_idx = -1
idx_list = []
for i in range(len(s)): # 뒤집을 단어 양 끝의 인덱스 구하기
if s[i] == '<':
v += 1
elif s[i] == '>':
v -= 1
else: # alphabet or number
if v != 0: # in '<>'
continue
else: # out of '<>'
if s[i] != ' ': # 공백이 아닐 때만
if check_idx == -1:
pre_idx = i
check_idx = 1 # 앞 인덱스 추가
if len(s)-1 == i:
post_idx = i
idx_list.append([pre_idx, post_idx])
elif s[i+1] == ' ' or s[i+1] == '<':
post_idx = i
idx_list.append([pre_idx, post_idx])
check_idx = -1
for pre, post in idx_list: # 구한 인덱스로 단어 뒤집기
revers(pre, post)
print(s)
# 두번째 풀이
S, tmp = input(), ""
ck = False
for i in S:
if i == ' ':
if not ck:
print(tmp[::-1], end=" ")
tmp = ""
else:
print(" ", end="")
elif i == '<':
ck = True
print(tmp[::-1] + "<", end="")
tmp = ""
elif i == '>':
ck = False
print(">", end="")
else: # alphbet and number
if ck:
print(i, end="")
else:
tmp += i
print(tmp[::-1])
- print() 안에 리스트를 출력하는 방식 편의성 list[], list[::-1](거꾸로)
- 0, 1로 구별 말고 True, False로 구별하는 법도 있음
반응형
'컴퓨터 > 백준 문제풀이' 카테고리의 다른 글
9037 The candy war, 16769 Mixing Milk, 2480 주사위 세개 (0) | 2020.10.23 |
---|---|
17389 보너스 점수, 16165 걸그룹 마스터 준석이, 17224 APC는 왜 서브태스크 대회가 되었을까? (0) | 2020.10.21 |
15969 행복, 10539 수빈이와 수열, 17269 이름궁합 테스트 (0) | 2020.10.20 |
1759 암호만들기, 5719 거의 최단 경로, 1774 우주신과의 교감 (0) | 2020.10.16 |
1781 컵라면, 9663 N-Queen, 1987 알파벳 (0) | 2020.10.14 |
댓글