세로 읽기

곽지욱·2023년 9월 6일

BOJ

목록 보기
18/69
post-thumbnail

백준 10798번 : 세로읽기 B1

10798번: 세로읽기

  • 이 또한 조건을 빠르게 찾는 것에 집중했다 2차원 배열을 생성하고 , 그 제한은 5행 15열 인 것
import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);

        char[][] str = new char[5][15];
        //5줄 최대 15글자 2차원 배열선언

        for(int i = 0; i<5; i++){

            String A = sc.next();

            for(int j =0; j <A.length(); j++){

                str[i][j] = A.charAt(j);

            }
        }

        //0,0 1,0 2,0 3,0
        //행이 1씩 증가하고 열이 증가하지 않아야 함

        for (int k = 0; k < 15; k++) {
            for (int q = 0; q < 5; q++) {
                // '\0'이 아닌 경우에만 출력
                if (str[q][k] != '\0') {
                    System.out.print(str[q][k]);
                }

            }
        }

    }
}
  • 입력한 문자열을 단어 하나 하나 씩 2차원 배열 index에 저장할 것이기 때문에 char 형태로 2차원 배열을 생성하였다.

  • for 문을 5번 반복하면서 입력을 받고 동시에, A의 길이만큼 반복문을 반복하면서 [i][j] 에 단어를 넣어 주었다

ABCDE
abcde
01234
FGHIJ
fghij 
  • 위와 같은 입력이 주어졌을 때 세로로 출력한다는 것은 즉 , 이중 반복문으로 행이 1씩 증가하면서 열이 증가하지 않으면 된다
  • 행의 크기 →5 , 열의 크기 → 최대 15
  • if문이 없다면 어떻게 될까 ? if문이 없다면 최대 열의 크기인 15만큼 문자열이 주어지지 않았을 경우에도 계속해서 빈 문자를 출력함
  • if문이 없다면 어떻게 될까 ? if문이 없다면 최대 열의 크기인 15만큼 문자열이 주어지지 않았을 경우에도 계속해서 빈 문자를 출력함

0개의 댓글