100세까지 코딩
[백준] 1316번 그룹 단어 체커 (파이썬) 본문
문제
나의 생각
- 단어를 순회하면서 바로 다음 알파벳을 본다.
- len(s)-2까지 돌아야 s [j+1]이 index 초과가 되지 않는다.
- 현재 알파벳과 다르면 현재 알파벳이 그다음에 나오는지 확인한다.
- 그다음에 또 나오면 그룹 단어가 아니므로 cnt -= 1
나의 풀이
T = int(input())
cnt = T
for i in range(T):
s = input()
for j in range(len(s) - 1):
if s[j] != s[j + 1]:
if s[j] in s[j + 1:]:
cnt -= 1
break
print(cnt)
참고
T = int(input())
cnt = T
for i in range(T):
s = input()
for j in range(len(s)-1):
if s.find(s[j]) > s.find(s[j+1]):
cnt -= 1
break
print(cnt)
- find()는 해당 문자가 나오는 첫번째 index번호를 return 해준다.
만약, 그 다음그다음 문자 index 보다 이전 문자 index가 더 크다면 그다음 문자는 이미 앞에서 나온 적이 있다는 뜻이다.
ex ) input : aba
s.find(a) : 0
s.find(b) : 1
s.find(a) : 0
'코딩테스트 > 파이썬' 카테고리의 다른 글
[백준] 10798번 세로읽기 (파이썬) (0) | 2024.01.12 |
---|---|
[백준] 2566번 최댓값(파이썬) (0) | 2024.01.11 |
[백준] 2941번 크로아티아 알파벳 (0) | 2024.01.10 |
[백준] 1157번 단어 공부 (파이썬) (0) | 2024.01.10 |
[백준] 25083 새싹 (파이썬) + 따옴표 3개 표현 (0) | 2024.01.10 |