class Solution {
public int solution(String s) {
// 자를 수 있는 최대 수는 절반까지
int answer = s.length();
int half = s.length() / 2;
StringBuilder sb = new StringBuilder();
sb.append(s);
for(int i = 1 ; i <= half ; i++ ){
int len = s.length();
String split = sb.substring(0,i); // i개씩 짜른 거
int check = 1;
for(int j = i ; j <= (s.length()-i) ; j=j+i){
if(split.equals(sb.substring(j,j+i))){ // 같으면 빼주기
len -= i;
check++;
}else{
split= sb.substring(j,j+i);
if(check != 1){
len+= num_len(check); // 앞에 숫자 더해주기
check = 1;
}
}
}
if(check != 1)
len+= num_len(check);
if(answer > len)
answer = len;
}
return answer;
}
private int num_len(int n){
String num = Integer.toString(n);
return num.length();
}
}