728x90
s =input()
alpha2=['c=','c-','dz=','d-','lj','nj','s=','z=']
result = 0
index = 0
while True:
tmp = s.find(alpha2[index])
if tmp == -1:
if index == 7:
break
index += 1
else:
s = s.replace(alpha2[index],'_',1)
result += 1
for ch in s:
if ch != '_':
result += 1
print(result)
인덱스로 비교할까하다가 너무 오래걸릴것 같아서 다른 방법을 찾았다.
'dz='와 'z='를 구분할만한 방법이 어떤게 있는지 생각해보다가 빼버리면 구분 가능할수있었다.
하지만 새로운 문제가 생겼다.
nljj에서 lj 를 빼고 나면 nj가 남는데 다시 알파벳으로 인식되는 문제였다.
그래서 특수문자로 치환했고 성공했다.
다 풀고 나서 타인의 코드를 봤는데 '이게 왜풀리지?'에서 '이게 되네' 하는 코드가 있었다.
나와 같이 어이가 없길 바라며 코드를 공유하겠다.
a = input()
b = ['c=','c-','z=','d-','lj','nj','s=','dz=']
tmp = len(a)
for i in b:
tmp -= a.count(i)
print(tmp)
그나저나 오늘은 백준 서버가 사람이 몰리는지 채점시간보다 기다리는 시간이 오래걸렸다. 내일은 나아지겠지.
그리고 백준을 단계별로 풀고있는데 level 7 문자열까지 풀었다.
시간나는 날이면 하루에 한단계씩 푸는 거 같은데 아직 높은 단계가 안나와서 그런가보다.
점점 느려지겠지...
'STUDY > Algorithm' 카테고리의 다른 글
[백준] 1032 명령프롬프트 (0) | 2021.02.03 |
---|---|
[백준] 1268. 임시반장 구하기 (0) | 2021.02.02 |
[백준] 10809 알파벳 찾기 (0) | 2021.02.01 |
[백준] 1157 단어 공부 (0) | 2021.02.01 |
[백준] 8958 OX 퀴즈 (0) | 2021.01.30 |