코딩 테스트/백준

백준 - [단계별로 풀어보기 2차원 배열] 10798 세로읽기

devrabbit22 2026. 3. 19. 01:33

이번 문제는 각 줄의 문자열을 입력받은 뒤, 이를 세로 방향으로 읽어 출력하는 문제였다.
입력은 행 기준으로 이루어지지만, 출력은 열을 기준으로 진행해야 한다.
따라서 데이터를 2차원 배열에 행 기준으로 저장한 뒤, 출력할 때는 행과 열의 순서를 바꿔 반복문을 실행했다.
또한, 각 줄의 길이가 서로 다르기 때문에 비어있는 값('\0')은 출력하지 않도록 조건을 추가해 구현했다.

 //백준 10798 세로 읽기
 char[ , ] colsReadArr = new char[5, 15];

 for(int i = 0; i < 5; i++)
 {
     string inputData = Console.ReadLine();  //string을 값을 받은 이유 인덱스 접근이 가능해 형변환할 필요가 없다.
     for (int j = 0; j < inputData.Length; j++)
     {
         colsReadArr[i, j] = inputData[j];   
     }
 }
 for(int j = 0; j < 15; j++)
 {
     for(int i = 0; i < 5; i++)
     {
         if (colsReadArr[i, j] != '\0') // 비어있는 값 건너뛰기
             Console.Write(colsReadArr[i, j]);
     }
 }