📌문제
🎖️난이도
✔️풀이
def find_shortcut(word_list):
for idx, word in enumerate(word_list):
if word[0].upper() not in short_cut:
short_cut.add(str(word[0]).upper())
temp_word = list(word)
temp_word.pop(0)
text = "[" + word[0] + "]" + "".join(temp_word)
word_list[idx] = text
return " ".join(word_list)
temp = " ".join(word_list)
for idx, t in enumerate(temp):
if t != " ":
if (t.upper() not in short_cut):
short_cut.add(t.upper())
return temp[0:idx] + "[" + t + "]" + temp[idx+1:]
return " ".join(word_list)
short_cut = set()
for _ in range(int(input())):
option = input()
print(find_shortcut(list(option.split())))
🧠노트
short_cut이라는 set에 넣어줄 때, 무조건 대문자로 바꿔서(upper()) 넣어주고,
중복 검사 할 때도 대문자로 바꿔서 체크해주는 것이 핵심!
또한, 문자열이나 리스트 슬라이싱을 할 때에는 index error에 유의하자!
[1: ] 이런 식으로 할 때 길이가 1인 경우 등이 있는지 꼼꼼히 생각해주자.
🔍참고
-
'[ 알고리즘 ] > Implementation' 카테고리의 다른 글
[프로그래머스] 스킬트리 (0) | 2022.10.07 |
---|---|
[기타] 마스크 연산같은 다이아몬드 배열 구현 (0) | 2022.09.24 |
[백준] 20436. ZOAC 3 (0) | 2022.08.02 |
[백준] 14467. 소가 길을 건너간 이유 (0) | 2022.08.02 |
[백준] 12933. 오리 (0) | 2022.08.02 |