💡/코딩 테스트
[프로그래머스] 가장 가까운 같은 글자
defyuil
2024. 6. 12. 17:45
class Solution {
public int[] solution(String s) {
int[] answer = new int[s.length()];
answer[0] = -1;
for(int i=1; i<s.length(); i++){
for(int z=i-1; z>=0; z--){
if(s.charAt(i)==s.charAt(z)){
answer[i] = i-z;
break;
}else{
answer[i] = -1;
}
}
}
return answer;
}
}
더보기
- 제일 앞 글자는 앞에 같은 글자가 존재하지 않기 때문에 -1을 넣는다
- 2중 for문을 사용하는데 안쪽 for문의 조건식은 i - 1부터 0까지 감소
- 매개변수 String s의 s.sharAt(i)가 s.charAt(z)와 같으면 i - z한 값을 배열에 저장시킨 후 z 반복문 탈출