- arr[0][0]→arr[1][0]→arr[0][1]→arr[1][1]→arr[0][2]→arr[1][2]..... 이런식으로 출력
- arr[0][0]→arr[1][0]→arr[0][1]→arr[1][1]→arr[0][2]→arr[1][2]..... 이 문제의 핵심이다.
function readVertically(arr) {
// 배열의 요소 중에서 제일 긴 문자열을 찾아낸다.
let maxLength = 0;
for(let i=0; i<arr.length; i++) {
if(maxLength <= arr[i].length) {
maxLength = arr[i]
}
}
let newArr = '';
// i는 제일 긴 문자열의 길이까지 돌고 j는 arr의 길이까지 돌린다.
for(let i=0; i<maxLength; i++) {
for(let j=0; j<arr.length; j++) {
// 비어있는 행 무시한다.
if(arr[j][i] === undefined) {
continue;
}
newArr = newArr + arr[j][i];
}
}
return newArr;
}