본문 바로가기
Algorithm/Baekjoon

[백준/BOJ] 1316번 - 그룹 단어 체커 (파이썬)

by shine-jung 2021. 7. 7.
반응형

문제 링크

 

코딩하기 전 생각하기

'''
등장한 적이 있는 알파벳을 리스트에 담을 것이다.
문자열을 입력받고 순회한다.
    연속되지 않은 알파벳이 나왔을 때,
        알파벳 리스트에 해당 문자가 있으면 break 한다.
        없으면 알파벳을 리스트에 담는다.
    문자열을 모두 순회했으면 count에 1을 더한다.
count를 출력한다.
'''

 


 

코드

n = int(input())
count = 0

for i in range(n):
    k = 1
    s = input()
    li = s[0]
    for j in range(1, len(s)):
        if j > 0 and s[j-1] != s[j]:
            if s[j] in li:
                k = 0
                break
            else:
                li += s[j]
    if k == 1:
        count += 1
print(count)

 


 

느낀점

 

비효율적임에도 불구하고 파이썬에서 in을 써버리는게 습관이 되버렸다.. C++에서 해쉬를 쓰는 방법을 연습해야겠다.

 

(주의) 기록용으로 작성한 글입니다. 코드가 허접하거나 알고리즘의 효율이 낮을 수 있습니다.

댓글 환영합니다!

반응형

댓글