[프로그래머스] 가장 가까운 같은 글자

JOY·2023년 6월 29일
0

[CodingTest] Java

목록 보기
44/61
post-thumbnail

🫡 문제

프로그래머스 - 가장 가까운 같은 글자

🫡 코드1

class Solution {
    public int[] solution(String s) {
        
        int[] answer = new int[s.length()];        
        answer[0] = -1;
        
        for(int i=1; i<s.length(); i++){
            answer[i] = -1;     
          
            for(int j=i-1; j>=0; j--){
                if(s.charAt(j) == s.charAt(i)){
                    answer[i] = i-j;
                    break;
                }                
            }
        }
        
        return answer;
    }
}

🫡 코드2

class Solution {
    public int[] solution(String s) {
        
        String words[] = s.split("");
        int[] answer = new int[words.length];
        
        answer[0] = -1;
        
        for(int i=1; i<words.length; i++){
            answer[i] = -1;
            
            for(int j=i-1; j>=0; j--){
                if(words[j].equals(words[i])){
                    answer[i] = i-j;
                    break;
                }
            }
        }
        
        return answer;
    }
}

🫡 풀이

  1. 처음 나온 글자는 앞에 같은 글자가 없기때문에 무조건 -1
  2. 자신의 앞에 위치한 같은 글자 중에 가장 가까운 글자가 있을 경우 칸 수 저장 후 break

코드1. String클래스의 charAt()를 사용하여 문자를 추출하고 한글자씩 비교.
코드2. String클래스의 equals()를 사용하여 문자열을 비교. 같으면 true, 다르면 false

profile
Just Do IT ------- 🏃‍♀️

0개의 댓글

관련 채용 정보