728x90
https://www.acmicpc.net/problem/3181
3181번: 줄임말 만들기
꿍은 만사가 귀찮아서 말을 하기도 귀찮아 한다. 그래서 하려는 말을 대신해줄 줄임말을 만들려고 하는데 나름 규칙을 만들었다. 하려는 말은 최소 하나 이상의 단어를 포함하는데 각 단어들은
www.acmicpc.net
풀이 과정
우선 금지된 단어(ban_list)에 줄임말로 들어가면 안되는 단어들을 리스트에 넣어준다.
그 후 for문과 if문, in/not in 개념을 이용해
각 단어가 맨 앞자리 문자 (첫번째 단어)가 아니거나, 금지된 단어 목록에 있으면 continue를 해주어 무시하고 반복문을 그대로 순회하도록 구현해보았다.
답
str_list = list(input().split())
ban_list = ['i', 'pa', 'te', 'ni', 'niti', 'a', 'ali', 'nego', 'no', 'ili']
result = []
for i in range(len(str_list)):
if (i!=0)&(str_list[i] in ban_list): # 맨 앞자리가 아니거나 금지 단어 목록에 있으면 무시
continue
else:
s = str(str_list[i]) # 줄임말 조건 충족시키는 단어는 따로 뺌
s_cap = s[0].upper() # 대문자 만들어주기
result.append(s_cap) # 결과 리스트에 하나씩 저장
# 결과 출력
for k in range(len(result)):
print(result[k], end="")
728x90
'Programming Languages > Python' 카테고리의 다른 글
[백준/python] 1100번 하얀 칸 (0) | 2022.12.21 |
---|---|
파이썬 버전3를 기본 버전으로 등록하기 (0) | 2022.12.21 |
[백준/python] 2750번 수 정렬하기 (1) | 2022.09.25 |
[백준/python] 3449번 해밍 거리 (1) | 2022.09.25 |
[백준/python] 14724번 관리자는 누구? (0) | 2022.09.25 |