hi jaeneee
baekjoon(2941-크로아티아 알파벳)_ python 본문
1) 문제

2) 예시

3) 제출
li = list(input()) #한 번에 문자열 입력 받기
cnt = len(li)
for i in range(1, len(li)):
if li[i] == '=':
# dz=
if i > 1 and li[i-1] == 'z' and li[i-2] == 'd':
cnt = cnt - 2
# c=, s=, z=
elif li[i-1] == 'c' or li[i-1] == 's' or li[i-1] == 'z':
cnt = cnt - 1
# c-, d-
if li[i] == '-' and (li[i-1] == 'c' or li[i-1] == 'd'):
cnt = cnt - 1
# lj, nj
if li[i] == 'j' and (li[i-1] == 'l' or li[i-1] == 'n'):
cnt = cnt - 1
print(cnt)
4) 메모리/시간/코드길이

5) PLUS
(ash silver의 문제 해결 과정)
- 첫째 줄에 문자열을 한 번에 입력 받기
- 문자열 길이를 알파벳 길이로 가정
- 1부터 문자열의 길이까지 크로아티아 알파벳을 찾기 위해 반복문 실행
- 크로아티아 알파벳의 변경된 알파벳의 길이만큼 전체 알파벳 길이에서 -하기(ex) 'c='가 나올 경우 -1, 'dz='가 나올 경우 -2)
- cnt 출력
(다른 사람 문제 해결 과정-- https://ooyoung.tistory.com/74)
1. 크로아티아 변경 알파벳을 리스트에 넣음
2. 문자열에 크로아티아 변경 알파벳 리스트가 있는지 확인하고 있으면 replace 함수로 한 글자로 바꿈
3. 전체 문자열 길이 세기
croatia = ['c=', 'c-', 'dz=', 'd-', 'lj', 'nj', 's=', 'z=']
word = input()
for i in croatia :
word = word.replace(i, '*')
print(len(word))'알고리즘 > baekjoon' 카테고리의 다른 글
| baekjoon(1316-그룹 단어 체커)_ python (0) | 2022.04.13 |
|---|---|
| baekjoon(10870-피보나치 수 5)_ python (0) | 2022.04.13 |
| baekjoon(11399-ATM)_ python (0) | 2022.03.23 |
| baekjoon(2851-슈퍼 마리오)_ python (0) | 2022.03.23 |
| baekjoon(2460-지능형 기차 2)_ python (0) | 2022.03.23 |