문제가 길어서 많이 짤렸는데,
예를 들어 c=c= 라는 단어를 입력 시,
크로아티아 알파벳 2개가 사용됐기에 2가 출력되면 되는 문제이다.
표 안에 없는 알파벳들은 모두 1개의 알파벳으로 친다!
정답 코드:
ca = ['c=','c-','dz=','d-','lj','nj','s=','z=']
ia = input()
for i in ca:
if i in ia:
ia = ia.replace(i,'C')
print(len(ia))
코드 풀이:
위 문제는 문제만 봤을 땐 어려워 보이지만, 알고리즘을 찾고,
파이썬의 replace메소드를 숙지하고 있다면 쉽게 풀 수 있는 문제이다.
replace메소드를 공부해야하는데, str.replace('x' , 'a') 를 예로 들어 알아보면
str이라는 문자열에 x라는 값들을 모두 a로 바꾸는 메소드이다. 따라서 위 문제에서 크로아티아 알파벳
ca를 리스트로 저장하고,
입력값인 ia 문자열에 ca의 인덱스들이 있다면,
그 인덱스를 C라는 문자로 바꿔서 치환해준다.
그럼 c=c= 를 입력했을 때
ia = CC 가 되기에, 2가 출력되는 것 처럼
사용된 크로아티아 알파벳 수를 len(ia)로 구할 수 있다!