코딩테스트/백준

[Java][백준 9086번] : 문자열

블로그 주인장 2023. 8. 13.


📢 문제 출처

 

9086번: 문자열

입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 하나의 문자열이 주어진다. 문자열은 알파벳 A~Z 대문자로 이루어지며 알파벳 사이에 공백은 없으

www.acmicpc.net


📢 문제 설명


📢 입출력 예시


📢 풀이

import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int num1 = sc.nextInt();
        String[] str = new String[num1];

        for (int i = 0; i < num1; i++) {
            str[i] = sc.next();
        }
        
        for (int i = 0; i < num1; i++) {
            String sResult = "";
            String[] s1 = str[i].split("");
            //첫번째 열과 마지막 열
            if(s1.length <= 1){
                sResult = s1[0] + s1[0];
            }
            else{
                sResult = s1[0] + s1[s1.length - 1];
            }

            System.out.println(sResult);
        }
    }
}
  1. Scanner를 이용해서 값을 입력받는다.
  2. 처음에 나온 정수 num1은 num1의 갯수만큼 문자열을 입력한다고 생각한다.
  3. 문자열을 입력해서 String[] 배열에 넣는다.
  4. String[].split("")을 진행해서 s1에 각 문자열의 배열을 삽입한다.
  5. 문자열의 Length가 1보다 작거나 같으면 동일 값을 반복해서 값을 더해 출력해준다.
  6. 그게 아니면 맨 앞의 인덱스(0) 값과 마지막 인덱스(length - 1) 의 값을 더해서 출력해준다.

반응형

댓글