크로아티아 알파벳 성공출처다국어분류
시간 제한 |
메모리 제한 |
제출 |
정답 |
맞은 사람 |
정답 비율 |
1 초 |
128 MB |
40912 |
17508 |
15441 |
45.581% |
https://www.acmicpc.net/problem/2941
문제
예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다.
크로아티아 알파벳 |
변경 |
č |
c= |
ć |
c- |
dž |
dz= |
đ |
d- |
lj |
lj |
nj |
nj |
š |
s= |
ž |
z= |
예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다.
dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩 센다.
입력
첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 '-', '='로만 이루어져 있다.
단어는 크로아티아 알파벳으로 이루어져 있다. 문제 설명의 표에 나와있는 알파벳은 변경된 형태로 입력된다.
출력
입력으로 주어진 단어가 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다.
알고리즘 분류
백준 알고리즘 # 2941번 : 크로아티아 알파벳
c_alphabet = ["c=", "c-", "dz=", "d-", "lj", "nj", "s=", "z="]
word = input().lower()
for i in c_alphabet:
word = word.replace(i, "c")
print(len(word))
풀이
변수 c_alphabet으로 크로아티아 알파벳을 미리 [] 리스트로 묶어서 만들어놓았다.
그리고 word 변수를 설정해서 lower()로 소문자로 입력받고 for문으로 각각의 c_alphabet을 반복해주었다.
word = [ljes=njak] (예제 입력1)
반복문 안에서 입력받은 word 중 i에 해당하는
즉 c_alphabet 리스트 안에 있는 문자열에 해당하는 것을 "c"로 바꿔주면
word = [ceccak] (예제 입력1)
위 코드와 같이 변환되고 이것의 길이를 len()으로 출력해주면 끝!🤗
자세한 코드가 궁금하신 분들은 아래 GitHub 참고해주세요🙏
최종 소스코드
'코딩테스트 > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 | 2292 : 벌집 (Python / 파이썬) (0) | 2020.09.21 |
---|---|
백준 알고리즘 | 1316 : 그룹 단어 체커 (Python / 파이썬) (0) | 2020.09.21 |
백준 알고리즘 | 5622 : 다이얼 (Python / 파이썬) (0) | 2020.09.21 |
백준 알고리즘 | 2908 : 상수 (Python / 파이썬) (0) | 2020.09.21 |
백준 알고리즘 | 1157 : 단어 공부 (Python / 파이썬) (1) | 2020.09.21 |
댓글