본문 바로가기

Python(알고리즘,문제풀이)/BOJ (Bronze V)

1316번 /그룹 단어 체커

728x90

📚문제

출처 : 백준 / 1316번 (https://www.acmicpc.net/problem/1316)

 

📝풀이

N = int(input())
group_word = N

for i in range(N) :
    word = input()
    for j in range(len(word)-1) :
        if word[j] == word[j+1] : # 문자가 연속되면 그냥 다음 반복으로
            continue
        elif word[j] in word[j+1:] : # 다른 문자와 처음 비교될 때 그 이후에도 문자가 나오면 -1
            group_word -= 1          # zzzaaz에서 z와 a 비교하는데 이후 문자열에서 z가 나오므로 -1 하고 두번째 for문 종료
            break                    # 그 이후에 나오지 않는다면 다음 반복으로
print(group_word)

count나 index함수를 이용하는 방법으로 생각중이었는데 너무 어려워서 계속 생각하다가 구글링해서 답을 참고해봤다.

두번재 for문 전까지는 풀이가 같았는데 그 이후에 풀이가 어려워서 계속 보고 이해하려고 했다.

아직 for문에서 continue, pass, break문등의 사용이 익숙하지 않아서 그런 것 같다.

 

1. elif word[j] in word[j+1:] True일 경우

 

2. elif word[j] in word[j+1:] False일 경우

도와줘 GPT...

728x90