Today's keyword : 그리디, 문자열
📌 문제설명
https://www.acmicpc.net/problem/13417
📌 문제풀이
카드 문자열 문제는 가장 왼쪽에 있는 카드부터 차례대로 한 장씩 가져오며, 가져온 카드를 가져온 카드 가장 왼쪽 혹은 오른쪽에 놓으며 사전 순으로 가장 빠른 문자열을 만들어야 하는 문제입니다.
## 카드 문자열
t = int(input())
for _ in range(t):
n = int(input())
card = list(input().split())
s = card[0]
for i in card[1:]:
if i + s > s:
s = s + i
else:
s = i + s
print(s)
카드 리스트에서 가장 왼쪽에 있는 카드를 기준으로 왼쪽에 두었을 때와 오른쪽에 두었을 떄를 비교하며, 어떤 방향에 두었을 때가 좋을 지 비교한 후, 사전 순으로 빠른 방향으로 문자열을 합쳐 문제를 해결합니다.
📌 오늘의 회고
문제 이해 후 코드 구현까지 오래 걸리지 않았습니다. 문자열 문제 유형은 상대적으로 평이한 것 같습니다.
#99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL
'Algorithm' 카테고리의 다른 글
[TIL] 99클럽 코테 스터디 18일차 TIL - 그리디: <백준 2212 센서> 문제 풀이 with python (1) | 2024.11.15 |
---|---|
[TIL] 99클럽 코테 스터디 16일차 TIL - <그리디: 백준 2847 게임을 만든 동준이 > 문제 풀이 with python (0) | 2024.11.13 |
[TIL] 99클럽 코테 스터디 14일차 TIL - 그리디 : <백준 14916 거스름돈> 문제 풀이 with python (1) | 2024.11.10 |
<백준 17070 : 파이프 옮기기 1 > 문제풀이 with python (0) | 2024.11.10 |
<백준 13335 : 트럭> 문제풀이 with python (4) | 2024.11.09 |