728x90
https://www.acmicpc.net/problem/2941
replace함수를 이용해 치환해주는 문제이다.
변수.replace (old, new, count) 형식인데, 변수에 있는 old 문자를 new 문자로 바꾸는 함수이다. count는 몇번 바꿀지 지정해주는 것이다. 만약 s= 'oxox' 라는 문자열이 있을 때 s.replace('ox', '*', 1) 이라고 하면 '*ox' 라는 결과가 되고, count를 2로 해주면 '**' 와 같은 결과가 나온다.
근데 빠른 입출력을 위해 sys.stdin.readline을 사용하시는 분들은 유의할 점이 하나 있다!!
내장함수 input()과 달리 sys.stdin.readline은 개행 문자까지 입력을 받기 때문이다.
len() 함수는 개행 문자의 길이도 1로 계산하기 때문에 문자열을 입력받을 때 주의해주어야 한다.
대부분 백준 문제를 풀 때, 문자열보다 숫자를 다루는 문제가 더 많기 때문에 방심할 수 있지만, 항상 개행 문자를 염두에 두고 까먹지 말아야 한다 !
import sys
#from collections import deque
#sys.setrecursionlimit(10**6)
input = sys.stdin.readline
if __name__ == "__main__":
x = input().rstrip()
cro_al = ['c=','c-','dz=','d-','lj','nj','s=','z=']
for i in cro_al:
x = x.replace(i, 'a')
print(len(x))
728x90
'알고리즘 > 백준(BOJ)' 카테고리의 다른 글
[백준/파이썬] 2877번 4와 7 (0) | 2023.04.26 |
---|---|
[백준/파이썬] 2108번 통계학 (0) | 2023.03.30 |
[백준/파이썬] 11758번 CCW (0) | 2023.03.23 |
[백준/파이썬] 1963번 소수 경로 (0) | 2023.03.21 |
[백준/파이썬] 5639번 이진 검색 트리 (0) | 2023.03.15 |