[210823 TIL] C++ 백준 알고리즘 - 문자열 1316

Serendipity·2021년 8월 22일
0

C++ 백준 알고리즘

목록 보기
13/14

📌 1316 그룹 단어 체커

📖 문자열 1316



<문제 읽기>


✍ 특정 문자가 바로 다음에 같게 나오는 건 괜찮지만 띄어서 같은 문자가 나오면 탈락


<문제 풀이 과정>


그럼 i번째 문자인 문자열[i]와 같은 문자를 문자열에서 전부 찾고,
해당 문자를 문자열 처음과 끝지점을 찾아 빼주면
길이를 확인할 수 있겠다!
둘이 같으면 그룹단어니 int cnt=0; cnt++ 해주면 끝
그렇게 문자열 하나를 끝까지 마무리

그리고 앞에서 제시한 문자열 갯수보다 작아질떄까지
i를 돌리는 i++ for 문을 돌려
cnt를 차곡차곡 쌓아주면 되겠다


ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
모두 찾는 건 비효율적일 수 있겠다. 알파벳 문자열 26사이즈를 정하고, {0,0,0,0,0...}상태에서 시작하자. 그럼 해당 알파벳이 나올 때마다 문자열에 추가를 하자. 그럼 {1,3,0,0,2,0,0,...} 이런 식으로 완성이 될 것이다.

arr[i]!=arr[i+1] //같지 않을 때,
arr[i]와 비교를 하자.



<작성한 코드>





✍오늘 배운 내용!

profile
I'm an graduate student majoring in Computer Engineering at Inha University. I'm interested in Machine learning developing frameworks, Formal verification, and Concurrency.

0개의 댓글