반응형
https://www.acmicpc.net/problem/10798
10798번: 세로읽기
총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’
www.acmicpc.net
[풀이]
입력받아 5*15 이중배열에 저장해준 후, 세로로 읽어 출력한다.
[코드]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.StringTokenizer;
public class BJ_10798_세로읽기 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
char[][] arr = new char[5][15];
for(int i = 0; i < 5; i++) {
String s = br.readLine();
for(int j = 0; j < s.length(); j++) {
arr[i][j] = s.charAt(j);
}
}
for(int i = 0; i < 15; i++) {
for(int j = 0; j < 5; j++) {
if(arr[j][i] != '\0')
sb.append(arr[j][i]);
}
}
System.out.println(sb);
}
}
**주의점**
if(arr[j][i] != ' ') 하면 틀린다.
NULL이 아닐 때를 표현하고 싶다면 if(arr[j][i] != '\0')
댓글