[프로그래머스] 문자열 압축 c++


[프로그래머스] 문자열 압축 c++

정말 오랜만에 풀려고 하니 쉽지가 않다. 이거 풀면서 또 테크닉 한 개 배웠다. 항상 부분 문자열을 비교할 때 if(s[i] == s[i+1]) 이런 식으로 만 했는데 이 문제 통해서 matchString을 뒤에 걸로 바꿔주면 더 편한다는 걸 배웠다. 일단 첫 번째 for 문에서 size / 2인 이유는 문자열을 길이의 반보다 크게 작으면 나눌 수 없기에 즉 첫 번째 for 문은 나눌 개수 matchString으로 해서 처음부터 나눠준다. 두 번째 for 문을 돌면서 macthString과 똑같은 개수로 나눠주면서 맞으면 개수를 증가시켜주고 아니면 지금까지 맞은 개수를 보고 2개 이상이면 숫자를 문자열에 추가해 주고 문자열을 넣어준다. 그리고 matchCnt = 1로 초..........



원문링크 : [프로그래머스] 문자열 압축 c++