[BOJ] 2941 | 크로아티아 알파벳

밤초록·2021년 7월 6일
0

PS

목록 보기
9/13

2941 | 크로아티아 알파벳
https://www.acmicpc.net/problem/2941

내 코드

changes = ['c=', 'c-', 'dz=', 'd-', 'lj', 'nj', 's=','z=']
alphas = input()
count = 0

for change in changes:
    if change in alphas:  
        count += alphas.count(change)
        alphas = alphas.replace(change,' ')
alphas = alphas.replace(' ', '')
count += len(alphas)

print(count)

이상 코드

changes = ['c=', 'c-', 'dz=', 'd-', 'lj', 'nj', 's=','z=']
alphas = input()

for change in changes:
    alphas = alphas.replace(change, ' ')
    
print(len(alphas))

학습

  • 공백 제거하려면
 replace(' ','')
  • 예시 3, 예시 4에서 내가 생각치 못한 에러가 나옴
    예시 3 - 내가 무턱대고 삭제해버리면 삭제한 앞 뒤가 붙을 수 있음
    예시 4 - replace 는 문자열 전체에서 해당 문자열을 변환해주는 건데
    count ++ 으로 해버리면 중복이 반영이 안 됨
    -> 발생할 수 있는 오류에 대해 충분히 생각하고 코드 짜기

  • 바꾼 문자열 부분을 공백 처리 하면 len으로 처리할 수도 있고 앞뒤가 붙는 불상사도 이루어 지지 않고 공백도 처리 가능

0개의 댓글

관련 채용 정보