https://www.acmicpc.net/problem/9086
9086번: 문자열
입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 하나의 문자열이 주어진다. 문자열은 알파벳 A~Z 대문자로 이루어지며 알파벳 사이에 공백은 없으
www.acmicpc.net
문제
문자열을 입력으로 주면 문자열의 첫 글자와 마지막 글자를 출력하는 프로그램을 작성하시오.
입력
입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 하나의 문자열이 주어진다. 문자열은 알파벳 A~Z 대문자로 이루어지며 알파벳 사이에 공백은 없으며 문자열의 길이는 1000보다 작다.
출력
각 테스트 케이스에 대해서 주어진 문자열의 첫 글자와 마지막 글자를 연속하여 출력한다.
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
String[] str = new String[T];
String[] str2 = new String[T];
String[] str3 = new String[T];
for(int i = 0; i < T; i++){
str[i] = sc.next();
}
for(int i = 0; i < T; i++){
str2[i] = str[i].substring(0, 1);
str3[i] = str[i].substring(str[i].length() - 1);
}
for(int i = 0; i < T; i++){
System.out.println(str2[i] + str3[i]);
}
}
}
총 입력 받을 문자열 갯수 T를 입력 받고, str, str2, str3 배열은 각각 맨 처음 입력받은 문자열, 해당 문자열의 가장 첫 문자, 해당 문자열의 가장 끝 문자를 저장할 수 있도록 선언했다. 이후 str[i] = sc.next();로 문자열을 T번 입력받고, str2[i] = str[i].substring(0, 1);을 통해 가장 처음 문자를 str2[i]에 넣고, str3[i] = str[i].substring(str[i].length() -1);을 통해 가장 마지막 문자를 str3[i]에 넣어주었다.( 가장 마지막 문자를 알기 위해서는 문자열의 길이를 알아야 해서 length()를 통해 문자열의 길이를 구하고 길이에서 1을 빼준 값을 substring에 넣어 문자열의 가장 마지막 문자를 알아냈다.)
이후 str2[i]와 str3[i]를 출력했다.
'Java' 카테고리의 다른 글
[백준] 코딩테스트 문제 1152 : 단어의 개수 (0) | 2023.07.20 |
---|---|
[백준] 코딩테스트 문제 11654번 : 아스키 코드 (0) | 2023.07.20 |
[백준] 코딩테스트 문제 2743 : 단어 길이 재기 (0) | 2023.07.11 |
[백준] 코딩테스트 문제 27866 : 문자와 문자열 (1) | 2023.07.10 |
[백준] 코딩테스트 문제 5597 : 과제 안 내신 분..? (0) | 2023.06.26 |