공부하기/백준

[Java] 백준 풀기 15814 - 야바위 대장

XEV 2023. 4. 5. 23:29

자바 백준 15814번

브론즈 2

https://www.acmicpc.net/problem/15814

 

15814번: 야바위 대장

첫 번째 줄에 문자열 S가 주어지고 두 번째 줄에 T가 주어진다. 문자열 S의 길이는 100보다 작거나 같은 자연수이며, 알파벳 대소문자와 하이픈(-)으로만 이루어져 있다. T는 50보다 작거나 같은 자

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 구현, 문자열

 

 

 

 

 

문제 풀기

입력 받은 문자열을 char array 로 모두 분리해 저장한다.

문제에서 제일 처음 문자를 0 번째로 지정을 해주었기 때문에 배열을 index 를 그대로 활용하여 자리바꿈을 하면 된다.

자리바꿈을 하기 위해 char temp 변수가 도입되었다.

t 번 만큼 주어진 index 에 대해 문자가 모두 바뀌었다면 array 의 value 를 순차적으로 출력을 위해서 for-each 를 사용하여 모두 출력한다. 이때, 한 줄에 모두 출력을 위해 System.out.print() 를 사용한다.

 

 

 

 

 

코드 보기

import java.util.Scanner;

public class Main {
    public static void main(String args[]) {
        
        Scanner sc = new Scanner(System.in);
        
        char[] textArr = sc.next().toCharArray();
        int t = sc.nextInt();
        
        for (int i = 0; i < t; i++) {
            int a = sc.nextInt();
            int b = sc.nextInt();
            
            char temp = textArr[a];
            textArr[a] = textArr[b];
            textArr[b] = temp;
        }
        
        for (char c : textArr) {
            System.out.print(c);
        }

    }
}