https://www.acmicpc.net/problem/1316
1316번: 그룹 단어 체커
그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때
www.acmicpc.net
N = int(input())
data = []
for i in range(N):
data.append(list(input()))
count = 0
for i in data:
flag = False
check = [
['a', 0],
['b', 0],
['c', 0],
['d', 0],
['e', 0],
['f', 0],
['g', 0],
['h', 0],
['i', 0],
['j', 0],
['k', 0],
['l', 0],
['m', 0],
['n', 0],
['o', 0],
['p', 0],
['q', 0],
['r', 0],
['s', 0],
['t', 0],
['u', 0],
['v', 0],
['w', 0],
['x', 0],
['y', 0],
['z', 0],
]
for n in check:
if i[0] == n[0]:
n[1] += 1
for j in range(1, len(i)):
if i[j] == i[j-1]:
continue
else:
for k in check:
if i[j] == k[0]:
k[1] += 1
for j in check:
if j[1] > 1:
flag = True
break
#print(check)
if not flag:
count += 1
print(count)
조금 노가다식으로 풀었다. 지금 알파벳과 전 알파벳이 다르다면 check 배열에서 1씩 늘려주는 방식으로 진행했다. check배열에서 2이상인 알파벳이 있다면 그룹단어가 아닌것이다.
'알고리즘 > python' 카테고리의 다른 글
| 18405번 경쟁적 전염(python3) (0) | 2022.01.27 |
|---|---|
| 1715번 카드 정렬하기(python) (0) | 2022.01.27 |
| 이.코.테 바닥공사, 효율적인 화폐 구성(python3) (0) | 2022.01.25 |
| 이.코.테 1로 만들기, 개미 전사(python3) (0) | 2022.01.24 |
| 이.코.테 부품찾기, 정렬된 배열에서 특정 수의 개수 구하기(이진 탐색) (0) | 2022.01.24 |