ProblemSolving/String

백준 2941 크로아티아 알파벳 (파이썬)

OSNIM 2022. 5. 12. 00:14
반응형

구현, 문자열

 

문제 : https://www.acmicpc.net/problem/2941

 

 

제출 코드

import sys
input = sys.stdin.readline
string = input().strip()
croatia = ['c=', 'c-', 'dz=', 'd-', 'lj', 'nj', 's=', 'z=']
cnt = 0
for alpha in croatia:
    string = string.replace(alpha, '*')
print(len(string))

 

첫번째 문자가 크로아티아 알파벳에 있는 문자중 첫번째 문자와 같으면 2자리 또는 3자리를 비교하는 방식으로 풀려고 했습니다. 그런데 너무 복잡해지고 풀이가 산으로 가는 것 같아 검색으로 힌트를 얻었습니다.

 

크로아티아 알파벳의 문자들을 replace라는 함수로 입력값의 문자열과 비교해서 같은 것이 있으면 string을 *로 바꿔주었습니다.

알파벳 개수와 변환된 string의 길이가 같으므로 이것을 출력해주었습니다. 

반응형