반응형

1. 문제 번호 10798번


 

 

 

2. 문제 풀이 

 

한줄 평가

 - 기본에 충실하게 푼다 !

 

 

문제를 먼저 정확히 파악

 

 - 이 블로그를 보는 사람은 틀린 이유를 못 찾아서 보실 확률이 높다.

   극단적인 값을 항상 생각하고 풀것

123456789abcde
fg
h
i
j

 

나의 문제풀이 방식 및 순서

 

 * 나의 다양한 학습이 우선이기 때문에 다양한 방법을 생각 *

 

 

 

  1. 15x5 행렬을 입력으로 받을때 거꾸로 2차원 배열에 넣어버린다.
  2. 그 다음에 출력

 

 

 

 

Char 2차원 배열 만든 결과(메모리 14300KB, 128ms) vs String 2차원 배열 만든 결과(메모리 14288KB, 124ms) 

 

 

난 이런게 오래걸리네?ㄷㄷ😅

 


3. 소스 인증

 

import java.util.*;
import java.lang.*;
import java.io.*;

// The main method must be in a class named "Main".
class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        String inputLine = null;

        int rows = 5;
        int columns = 15;
        String [][] matrix = new String[rows][columns];
        String [][] matrix_copy = new String[columns][rows];

        int currentRow = 0;
        
        while( (inputLine=br.readLine())!=null){
            for(int j = 0; j < inputLine.length(); j++){
                matrix[currentRow][j] = String.valueOf(inputLine.charAt(j));
                matrix_copy[j][currentRow] = String.valueOf(inputLine.charAt(j));
            }
            currentRow++;
            if(currentRow >= rows){
                break;
            }
        }

        for(int i = 0; i < matrix_copy.length; i++){
            for(int j = 0; j < matrix_copy[i].length; j++){
                if(matrix_copy[i][j]!=null){
                    sb.append(matrix_copy[i][j]);    
                }
            }
        }
        
        System.out.print(sb.toString());
        
    }
}

 

 

 

import java.util.*;
import java.lang.*;
import java.io.*;

// The main method must be in a class named "Main".
class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        String inputLine = null;

        int rows = 5;
        int columns = 15;
        char [][] matrix = new char[columns][rows];

        // Initialize matrix with space character
        for (int i = 0; i < columns; i++) {
            for (int j = 0; j < rows; j++) {
            matrix[i][j] = ' ';
            }
        }

        int currentRow = 0;
        while( (inputLine=br.readLine())!=null){
            for(int j = 0; j < inputLine.length(); j++){
                matrix[j][currentRow] = inputLine.charAt(j);
            }
            currentRow++;
            if(currentRow >= rows){
                break;
            }
        }
        for(int i = 0; i < matrix.length; i++){
            for(int j = 0; j < matrix[i].length; j++){
                if(matrix[i][j] != ' '){
                    sb.append(matrix[i][j]);    
                }
            }
        }
        System.out.print(sb.toString());
    }
}

 

- 실패 소스코드 -

 

 


4. 추가 개념

 

 

 

 

 

 

 


5. 참조 블로그


 

불편함을 느끼실 경우 연락 주시면 곧 바로 삭제하도록 하겠습니다.

 


 

 

 

 

 

 

 



728x90
반응형

+ Recent posts