728x90
문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
정답
import java.util.*;
class Solution {
public int[] solution(String s) {
int[] answer = new int[s.length()];
String alpha = "";
for(int i = 0; i < s.length(); i++) {
String one = "" + s.charAt(i);
if(alpha.contains(one)) {
for(int j = i - 1; i >= 0; j--) {
String a = "" + s.charAt(j);
if (one.equals(a)) {
answer[i] = i - j;
break;
}
}
} else {
alpha += one;
answer[i] = -1;
}
}
return answer;
}
}
alpha에 문자가 없으면 -1, 있다면 for문을 통해 인덱스 번호를 앞으로 가면서 같은 문자가 있다면 그 문자의 인덱스를 저장하여 문제를 풀었습니다.
728x90
'프로그래머스 코딩테스트 > JAVA' 카테고리의 다른 글
[프로그래머스] 과일 장수 JAVA (0) | 2024.08.05 |
---|---|
[프로그래머스] 카드 뭉치 JAVA (0) | 2024.08.05 |
[프로그래머스] 푸드 파이트 대회 JAVA (0) | 2024.08.05 |
[프로그래머스] 콜라 문제 JAVA (0) | 2024.08.05 |
[프로그래머스] 명예의 전당 (1) JAVA (0) | 2024.08.05 |