직사각형 형태의 그림 파일이 있고, 이 그림 파일은 1 × 1 크기의 정사각형 크기의 픽셀로 이루어져 있습니다. 이 그림 파일을 나타낸 문자열 배열 picture과 정수 k가 매개변수로 주어질 때, 이 그림 파일을 가로 세로로 k배 늘린 그림 파일을 나타내도록 문자열 배열을 return 하는 solution 함수를 작성해 주세요.
import java.util.ArrayList;
import java.util.List;
class Solution {
public String[] solution(String[] picture, int k) {
List<StringBuffer> answer1 =new ArrayList<>();
String[] answer =new String[picture.length*k];
for(int i=0; i<picture.length; i++){
for(int t=0;t<k;t++) {
StringBuffer a=new StringBuffer();
for (int j = 0; j < picture[i].length(); j++) {
for(int r=0;r<k;r++){
a.append(picture[i].charAt(j));
}
}
answer1.add(a);
}
}
for (int i = 0; i < answer.length; i++) {
answer[i]=answer1.get(i).toString();
}
return answer;
}
}
와 이거 진짜 오래걸렸음 .... for 이 하도 많다보니까 너무헷갈렸던 문제였다...
다풀고도 for문을 이렇게 많이 쓰는게 맞나하고 다른 사람들의 풀이를 보니 다들 3개 이상 씩은 쓴거 같아서
간단히 나오는 문제가 아닌걸 알았다! 하핫 그리고 또 StringBuffer 를 써먹었다. 아무래도 계속 String 구조가 바뀌기 때문에 이형태로 해야지 더 쉽게 풀것같았다.!
'자바 알고리즘 문제' 카테고리의 다른 글
| 외계어 사전 (2) | 2024.03.22 |
|---|---|
| 문자열 겹쳐쓰기 (0) | 2024.03.21 |
| 정사각형으로 만들기 (0) | 2024.03.15 |
| 무작위로 K개 의 수 뽑기 ( 못 풀었음 ) (1) | 2024.03.15 |
| 수열과 구간 쿼리2 (0) | 2024.03.12 |