문자열 압축
짜는데 시간이 오래걸리고 디버깅하는라 엄청 헤맸다
import java.util.*;
class Solution {
public int solution(String s) {
if(s.length() == 1) return 1;
int sep = 1;
int min = 1001;
while(sep < (s.length()))
{
ArrayList<String> arr = new ArrayList<>();
StringBuilder sb = new StringBuilder();
int cnt = 1;
for(int i = 0; i < s.length(); ++i)
{
if(cnt == sep)
{
sb.append(s.charAt(i));
arr.add(sb.toString());
cnt = 0;
sb.setLength(0);
}
else
{
sb.append(s.charAt(i));
}
cnt++;
}
arr.add(sb.toString());
String temp = arr.get(0);
int idx = 1;
cnt = 1;
sb.setLength(0);
while(idx < arr.size())
{
if(temp.equals(arr.get(idx)))
{
cnt++;
}
else
{
if(cnt > 1)
{
sb.append(cnt + temp);
}
else
sb.append(temp);
temp = arr.get(idx);
cnt = 1;
}
idx++;
}
if(cnt > 1)
{
sb.append(cnt + temp);
}
else
sb.append(temp);
min = Math.min(min, sb.length());
sep++;
}
int answer = min;
return answer;
}
}