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

+ Recent posts