[PCCP 모의고사 #1_01] 외톨이 알파벳

Soorim Yoon·2022년 10월 15일
1

문제

https://school.programmers.co.kr/learn/courses/14760/lessons/125483

  • 알파벳 소문자로만 이루어진 어떤 문자열에서, 2회 이상 나타난 알파벳이 2개 이상의 부분으로 나뉘어 있으면 외톨이 알파벳이라고 정의합니다.

  • 문자열 "edeaaabbccd"를 예시로 들어보면,
    1) a는 2회 이상 나타나지만, 하나의 덩어리로 뭉쳐있으므로 외톨이 알파벳이 아닙니다.
    2) d는 2회 나타나면서, 2개의 부분으로 나뉘어 있으므로 외톨이 알파벳입니다.

제한사항 및 입출력 예

코드

정답

def solution(input_string):
    answer = ''
    
    str_list = [input_string[0]]
    for i in input_string:
        if i != str_list[-1]:       # 한 문자가 연속적으로 나타난 경우 제거
            str_list.append(i)
    
    ans = set(str_list)
    ans = sorted(ans)       # ans 딕셔너리를 알파벳 순으로 정렬함
        
    for i in ans:
        cnt = 0
        for j in str_list:
            if i == j:
                cnt += 1
        if cnt > 1:
            answer += i
    
    if answer == '':
        answer += 'N'
    
    return answer

실행 결과

profile
👩🏻‍💻 AI를 좋아하는 IT학부생

0개의 댓글