# 단축키 지정 import sys input = sys.stdin.readline def check_word_first(words, shortcut): for i in range(len(words)): c = words[i][0].upper() if not shortcut.get(c, 0): shortcut[c] = 1 return i return -1 def check_word(word, shortcut): for i in range(len(word)): c = word[i].upper() if not shortcut.get(c, 0): shortcut[c] = 1 return i return -1 def solution(): n = int(input().rstrip()) shortcut = {} for _ in range(n): option = input().rstrip().split() shortcut_idx = check_word_first(option, shortcut) if shortcut_idx != -1: option[shortcut_idx] = f"[{option[shortcut_idx][0]}]" + option[shortcut_idx][1:] print(*option) continue idx = 0 while idx < len(option): shortcut_idx = check_word(option[idx], shortcut) if shortcut_idx != -1: option[idx] = option[idx][:shortcut_idx] + f"[{option[idx][shortcut_idx]}]" + option[idx][shortcut_idx+1:] break idx += 1 print(*option) return solution() """ 걸린 시간: 41분 시간 복잡도: 완전 탐색이기 때문에 O(5*10*n)이다. 해설: 30개의 옵션에 1개 옵션 당 5개 이하 단어와 1개의 단어에 10개 이하의 알파벳이면 다 돌아봤자 1500이다. 따라서 조건대로 구현하면 된다. 대소문자를 구분하지 않기 때문에 다 upper로 만들어서 현재 사용된 옵션을 기록한다. 단어 첫 글자들을 보며 옵션 설정하고, 한 단어씩 쭉 보면서 옵션 설정을 한다. 옵션을 설정하면 출력 형태를 맞춰서 리스트에 저장하고 마지막에 한번에 출력한다. """