본문 바로가기
Programming/Test

[Java] 인덱스 바꾸기 - Programmers Q120895

by 돌방로그 2023. 4. 17.

프로그래머스(Programmers)를 통해 코딩 테스트 사전 연습한 사항입니다.


요약

  • 출처: 프로그래머스(Programmers)
  • 번호: 120895

 

코드

public class Java_120895 {
    public String solution(String my_string, int num1, int num2) {
        String answer = "";
        int index_small = num1 > num2 ? num2 : num1;
        int index_big = num1 > num2 ? num1 : num2;

        for(int i = 0; i < my_string.length(); i++) {
            String letter = String.valueOf(my_string.charAt(i));
            if(i == index_small) {
                answer += String.valueOf(my_string.charAt(index_big));
            }
            else if(i == index_big) {
                answer += String.valueOf(my_string.charAt(index_small));
            }
            else {
                answer += letter;
            }
        }

        return answer;
    }
}

 

풀이

주어진 두 인덱스 num1과 num2가 어떤 값이 더 큰지 모르니 두 값을 큰 인덱스와 작은 인덱스로 별도로 저장합니다.

주어진 문자열을 하나의 문자씩 반복하면서 큰 인덱스와 작은 인덱스로 인덱스가 위치할 때 문자를 스위칭하도록 합니다.

그 외의 경우에는 기존 인덱스의 문자를 그대로 출력하도록 설정하여 원하는 결과값을 획득합니다.

 

출처

https://school.programmers.co.kr/learn/courses/30/lessons/120895

 

저장소

https://github.com/Ardium/TIL/blob/master/CodingTest/Java/src/programmers/level0/Java_120895.java

 

 


 

댓글