μ΅œλŒ€ 1 λΆ„ μ†Œμš”

πŸ“ [D3_5356] μ˜μ„μ΄μ˜ μ„Έλ‘œλ‘œ λ§ν•΄μš”

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Queue;

public class Solution {
    static String[] arr;
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        // ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€ 개수
        int T = Integer.parseInt(br.readLine());


        for (int t = 1; t <= T; t++) {
            sb.append("#").append(t).append(" ");

            char[][] arr = new char[5][15];

            // μž…λ ₯
            for(int i=0; i<5; i++) {
                String str =br.readLine();
                for(int j=0;j<str.length(); j++) {
                    arr[i][j] = str.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]);
                    }
                }
            }
            sb.append("\n");
        }
        System.out.println(sb);
    }
}

πŸ€” λ‚˜μ˜ 생각

μ²˜μŒμ— 문제λ₯Ό 보고 반볡문으둜 ν•  생각을 ν•˜μ˜€λŠ”λ°, 가변적인 str의 길이λ₯Ό μ²˜λ¦¬ν•  방법을 찾지 λͺ»ν•˜λ‹€κ°€
각 μ€„μ˜ λ¬Έμžμ—΄μ˜ λ²”μœ„κ°€ 15κΉŒμ§€λ‘œ 비ꡐ적 적은 μˆ˜μ—¬μ„œ λ‹€ λ°©λ¬Έν•΄μ£Όκ³  0이 μ•„λ‹Œ λ°°μ—΄ 값을 좜λ ₯ν•΄ μ£Όμ—ˆλ‹€.
이 λ¬Έμ œλŠ” StringBuilder λ₯Ό μ‚¬μš©ν•˜κΈ° 제격인 문제 κ°™λ‹€.
그리고 이 λ¬Έμ œμ—μ„œ char 배열이 μ΄ˆκΈ°ν™” ν•˜λ©΄ 0으둜 μ΄ˆκΈ°ν™” λ˜λŠ” 쀄 처음 μ•Œμ•˜λ‹€.. γ…‹γ…‹γ…‹ λ°”λΆ€..
쒋은 지식을 μ–»κ²Œ λ˜λŠ” λ¬Έμ œμ˜€λ‹€ ^^