기초다지기/JS 코딩테스트
javascript n x n 크기의 정사각형 배열로 확대하기
by 김빵그
2023. 10. 30.
문제
문자열 배열 picture과 정수 k가 매개변수로 주어질 때 이 배열을 가로 세로로 k배 늘린 배열로 리턴하여라
나의 풀이
function solution(picture, k) {
var answer = [];
for(let i = 0; i < picture.length; i++) {
var a = [...picture[i]].map((w)=>w.repeat(k)).join("");
for (let j = 0; j < k; j++) {
answer.push(a);
}
}
return answer;
}
- a 변수는 picture 배열의 각 요소를 k 번 반복하여 문자열을 나타낸다
- for 문을 사용하여 k 배 확대하여 push 한다
다른 풀이
function solution(picture, k) {
var answer = [];
picture.forEach((line) => {
const expanded = [...line].reduce((acc, cur) => acc + cur.repeat(k), '');
for(let i=0; i<k; i++) answer.push(expanded);
});
return answer;
}
- line 문자열을 배열로 변환한다
- reduce를 사용하여 cur를 k번 반복하고 그 결과를 acc에 더한다