function solution(sizes) {
// 왼쪽 : 최대값, 오른쪽 : 최소값
// 왼쪽 : 최대값 중 최대, 오른쪽 : 최소값 중 최대
let leftMax=0, rightMax=0;
for (let i=0; i<sizes.length; i++) {
if (sizes[i][0] < sizes[i][1]) { // 근데 이 부분을 그냥 sort 정렬로 해도 될듯
sizes[i] = [sizes[i][1], sizes[i][0]];
}
if (leftMax < sizes[i][0]) leftMax = sizes[i][0];
if (rightMax < sizes[i][1]) rightMax = sizes[i][1];
}
return leftMax * rightMax;
}
console.log(solution([[60, 50], [30, 70], [60, 30], [80, 40]]));
가독성이 좋다.
function solution(sizes) {
const rotated = sizes.map(([w, h]) => w < h ? [h, w] : [w, h]);
let maxSize = [0, 0];
rotated.forEach(([w, h]) => {
if (w > maxSize[0]) maxSize[0] = w;
if (h > maxSize[1]) maxSize[1] = h;
})
return maxSize[0]*maxSize[1];
}