문제
https://www.acmicpc.net/problem/1283
설계
- 1. 띄어쓰기를 기준으로 나눠진 단어의 첫번째 이니셜만 확인한다.
- 1번 조건을 만족하지 못했을 경우 각 단어의 문자를 하나씩 확인한다.
파이썬
bucket = [0] * 100
N = int(input())
for _ in range(N):
arr = list(map(str, input().split()))
shortcut = 0 # 단축키가 지정되어있는지 확인
# 각 요소의 첫번째 자리만 단축키 확인
for i in range(len(arr)):
if shortcut:
break
if bucket[ord(arr[i][0].upper())] == 0:
bucket[ord(arr[i][0].upper())] = 1
trans = list(arr[i])
trans.insert(1, ']')
trans.insert(0, '[')
arr[i] = ''.join(s for s in trans)
shortcut = 1
# 각 요소별 단축키 지정 확인
for i in range(len(arr)):
for j in range(len(arr[i])):
if shortcut:
break
if bucket[ord(arr[i][j].upper())] == 0:
bucket[ord(arr[i][j].upper())] = 1
trans = list(arr[i])
trans.insert(j + 1, ']')
trans.insert(j, '[')
arr[i] = ''.join(s for s in trans)
shortcut = 1
for i in range(len(arr)):
if i == len(arr) - 1:
print(arr[i])
else:
print(arr[i], end=' ')
'PS (Problem Solving) > Baekjoon' 카테고리의 다른 글
[백준] 3980. 선발 명단 - 파이썬 (0) | 2023.03.08 |
---|---|
[백준] 1032. 명령 프롬프트 - 파이썬 (0) | 2023.03.07 |
[백준] 2302. 극장 좌석 - 파이썬 (0) | 2023.03.02 |
[백준] 2304. 창고 다각형 - 파이썬 (0) | 2023.03.02 |
[백준] 1158. 요세푸스 문제 - 파이썬 (0) | 2023.02.28 |