728x90

https://www.acmicpc.net/problem/1283

 

1283번: 단축키 지정

첫째 줄에 옵션의 개수 N(1 ≤ N ≤ 30)이 주어진다. 둘째 줄부터 N+1번째 줄까지 각 줄에 옵션을 나타내는 문자열이 입력되는데 하나의 옵션은 5개 이하의 단어로 표현되며, 각 단어 역시 10개 이하

www.acmicpc.net

n = int(input())

option = [] # 단축키 리스트

for i in range(n):
    inp_list = list(input().rstrip().split())
    
    flag = 0 # 첫 글자가 단축키로 지정될 수 있는지
    data = []
    for j in range(len(inp_list)):
        if inp_list[j][0].lower() not in option and inp_list[j][0].upper() not in option:
            option.append(inp_list[j][0])
            flag = 1
            inp_list[j] = '[' + inp_list[j][0] + ']' + inp_list[j][1:]
            break

        
    if flag == 0: # 첫 글자가 단축키로 지정될 수 없는 경우
        for j in range(len(inp_list)):
            flag = 0
            for k in range(len(inp_list[j])):
                if inp_list[j][k].lower() not in option and inp_list[j][k].upper() not in option:  # 단축키 설정 가능
                    option.append(inp_list[j][k])
                    if k != len(inp_list[j])-1:
                        inp_list[j] = inp_list[j][:k] + '[' + inp_list[j][k] + ']' + inp_list[j][k + 1:]
                    else:
                        inp_list[j] = inp_list[j][:k] + '[' + inp_list[j][k] + ']'
                    flag = 1
                    break
            if flag:
                break
    print(' '.join(inp_list))

 

반응형

'전.py' 카테고리의 다른 글

[python] 상하좌우  (0) 2022.02.14
[python] 프로그래머스 가장 큰 수 (Lv.2)  (0) 2022.02.14
[python] 프로그래머스 실패율 (Lv.1)  (0) 2022.02.11
[python] 큰 수의 법칙  (0) 2022.02.09
[python] 모험가 길드  (0) 2022.02.09
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기