본문 바로가기

알고리즘 (2020 : 08 : 10 ~ )/문자열

[백준 / BOJ] 2941 크로아티아 알파벳

문제

출처 : www.acmicpc.net/problem/2941

 

2941번: 크로아티아 알파벳

예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z=

www.acmicpc.net

문자열을 입력받았을때, 해당 문자열에서 크로아티아 알파벳이 몇개있는지 찾는 문제이다.

 

풀이

완전탐색으로 풀리는 문제다.

 

문자열의 최대 길이가 100이므로 모든경우를 다 보면서 크로아티아 알파벳을 찾아줘도 되지만, 해당 방법은 비효율적이다.

 

문제에서 주어진 크로아티아 알파벳들을 보면 규칙을 찾을수있는데, 바로 크로아티아 알파벳은 'j', '=' , '-' 셋중 하나로 끝난다는 점이다.

따라서, 문자열을 탐색하다, 'j', '=', '-' 셋중 하나인 경우에만 크로아티아 알파벳인지 확인해주면된다.

 

dz= , z= 두개의 크로아티아 알파벳이 나올수있는데, dz=보다 z=을 먼저 체크해주지 않도록 주의하자

소스코드

https://github.com/devxb/JJUNalgo/blob/master/2941%20%ED%81%AC%EB%A1%9C%EC%95%84%ED%8B%B0%EC%95%84%20%EC%95%8C%ED%8C%8C%EB%B2%B3/main.cpp

 

devxb/JJUNalgo

백준 알고리즘 소스코드🙃. Contribute to devxb/JJUNalgo development by creating an account on GitHub.

github.com