본문 바로가기
코딩테스트/JAVA

[JAVA/프로그래머스]코딩테스트 그림 확대

by wyatti 2023. 6. 11.

직사각형 형태의 그림 파일이 있고, 이 그림 파일은 1 × 1 크기의 정사각형 크기의 픽셀로 이루어져 있습니다. 이 그림 파일을 나타낸 문자열 배열 picture과 정수 k가 매개변수로 주어질 때, 이 그림 파일을 가로 세로로 k배 늘린 그림 파일을 나타내도록 문자열 배열을 return 하는 solution 함수를 작성해 주세요.

 

 

JAVA 코딩테스트 그림 확대

 

 

 

문제 설명

직사각형 형태의 그림 파일이 있고, 이 그림 파일은 1 × 1 크기의 정사각형 크기의 픽셀로 이루어져 있습니다. 이 그림 파일을 나타낸 문자열 배열 picture과 정수 k가 매개변수로 주어질 때, 이 그림 파일을 가로 세로로 k배 늘린 그림 파일을 나타내도록 문자열 배열을 return 하는 solution 함수를 작성해 주세요.

 

 

 

제한사항

  • 1 ≤ picture의 길이 ≤ 20
  • 1 ≤ picture의 원소의 길이 ≤ 20
  • 모든 picture의 원소의 길이는 같습니다.
  • picture의 원소는 '.'과 'x'로 이루어져 있습니다.
  • 1 ≤ k ≤ 10

 

 

JAVA 코딩테스트 그림 확대 코드

import java.util.ArrayList;
import java.util.List;

class Solution {
    public String[] solution(String[] picture, int k) {
        List<String> answerList = new ArrayList<>();
        for (String row : picture) {
            StringBuilder enlargedRow = new StringBuilder();
            for (char pixel : row.toCharArray()) {
                for (int i = 0; i < k; ++i) {
                    enlargedRow.append(pixel);
                }
            }
            for (int i = 0; i < k; ++i) {
                answerList.add(enlargedRow.toString());
            }
        }
        String[] answer = new String[answerList.size()];
        answer = answerList.toArray(answer);
        return answer;
    }
}

댓글