https://programmers.co.kr/learn/courses/30/lessons/60057
카카오 블라인드 코딩 테스트
class Solution {
public int solution(String s) {
int len = s.length();
int answer = len;
for (int i = 1; i <= len / 2; i++) {
String ss = s.substring(0, i);
String ss2 = s.substring(0, len);
String result = "";
int cnt = 1;
int cnt2 = len/i;
for (int j = i; j < len; j += i) {
if(len%i!=0) {
if(cnt2==1)
break;
cnt2--;
}
if (ss.equals(s.substring(j, j + i))) {
cnt += 1;
} else {
if (cnt == 1) {
result += ss;
ss = s.substring(j, j + i);
} else {
result += (cnt + ss);
ss = s.substring(j, j + i);
cnt = 1;
}
}
ss2 = s.substring(j, len);
}
if (cnt == 1) {
result += ss2;
} else {
result += (cnt + ss2);
}
if (answer > result.length()) {
answer = result.length();
}
}
return answer;
}
}
'Coding Test > Programmers' 카테고리의 다른 글
[DK]Programmers - 음양 더하기 - C++ (0) | 2021.08.03 |
---|---|
[ST]Programmers - 멀쩡한 사각형 - Java (0) | 2021.08.02 |
[ST]Programmers - 가장 큰 수- Java (0) | 2021.07.28 |
[DK]Programmers - 콜라츠 추측 - C++ (0) | 2021.07.28 |
[ST]Programmers - H-Index - Java (0) | 2021.07.26 |