본문 바로가기

Algorithm/문제 풀이62

[알고리즘] 크로아티아 알파벳 (백준 2941번) 2941번: 크로아티아 알파벳 문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= www.acmicpc.net 일종의 문자 패턴 매칭? 부류의 문제라고도 볼 수 있을 듯 한데 나같은 경우엔 stack을 이용해서 풀었으나 다른 사람들의 코드를 보니 String의 replace 메서드를 이용해서 푼 사람들이 많았다. (생각도 못했음...) Solution 1) Stack 사용 list라는 배열에 크로아티아 알파벳을 전부 집어넣는다. isCroaticAlphabet() 메서드를 만들어서 word가 list 안에 있으면 크로아티아 알파벳으로 판.. 2020. 8. 24.
[알고리즘] 괄호 체크 (백준 9012번) 9012번: 괄호 문제 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)�� www.acmicpc.net 문자열 처리 중 괄호 쌍 체크의 가장 핵심은 stack의 사용이다. string 길이만큼 반복문을 돌며 각 자리에 있는 character를 체크한다. 여는 괄호 ' ( ' 가 나오는 경우 stack에 push 한다. 닫힌 괄호 ' ) ' 가 나오는 경우 stack이 비어있으면 NO 반환 stack이 비어있지 않다면 stack에서 괄호 하나를 pop 한다. 반복문 종료 후 stack에 괄호가 남아있다면 NO 반환 그렇지 않다면 Y.. 2020. 8. 24.