반응형
https://school.programmers.co.kr/learn/courses/30/lessons/60057
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
![](https://blog.kakaocdn.net/dn/r476I/btrLbLiTQYj/KcqTdn2KLp53m47VvaBM6K/img.png)
![](https://blog.kakaocdn.net/dn/ccwL2y/btrK8fy2NUq/B3lzsFVXq5ZWeAeHjosoiK/img.png)
class Solution {
public int solution(String s) {
int answer = Integer.MAX_VALUE;
int slen = s.length();
if (slen == 1) return 1; // 문자열 길이가 1일 경우
for (int i=1; i<=slen/2; i++) {
String word1 = s.substring(0,i); // 첫번째 문자열
String word2 = "";
String temp = "";
int cnt = 1;
for (int j=i; j<=slen; j+=i) {
int one = j;
int two = j+i > slen ? slen : j+i;
word2 = s.substring(one, two); // 두번째 문자열
if (word1.equals(word2)) cnt++; // 같을 경우 숫자 증가
else {
if (cnt > 1) temp += cnt; // 다를 경우 숫자 입력 및 전 단어 입력
temp += word1;
cnt = 1; // 숫자 초기화
}
word1 = word2;
}
// 마지막 문자열 입력
if (cnt > 1) temp += cnt;
temp += word1;
answer = Math.min(temp.length(), answer);
}
return answer;
}
}
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스]JAVA - Level3. 입국심사 (0) | 2022.07.05 |
---|---|
[프로그래머스]JAVA - Level 2. 뉴스 클러스터링 (0) | 2022.06.29 |
[프로그래머스]JAVA - Level 2. 오픈채팅방 (0) | 2022.04.11 |
[프로그래머스]JAVA - Level 1. 완주하지 못한 선수 (0) | 2022.04.08 |
[프로그래머스]JAVA - Level 1. 비밀지도 (0) | 2022.04.07 |