연습장/백준(BOJ) 문제풀이

[백준 7568] 덩치 with Node.js

Tesseractjh 2021. 4. 9. 23:55

문제 링크

www.acmicpc.net/problem/7568

 

7568번: 덩치

우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩

www.acmicpc.net

풀이

const [n, ...arr] = require("fs").readFileSync("/dev/stdin").toString().trim().split("\n");
const men = arr.map((v, i) => ({weight: v.split(" ")[0], height: v.split(" ")[1], rank: 1}));
for (let i=0; i<men.length; i++) {
    for (let j=0; j<men.length; j++) {
        if (i !== j && men[i].weight < men[j].weight && men[i].height < men[j].height) men[i].rank++;
    }
}
console.log(men.map(i => i.rank).join(" "));

먼저 키, 몸무게, 등수를 프로퍼티로 갖는 객체 배열을 생성하였다. 배열 내에서 자신을 제외한 다른 객체 중에서 자신보다 키와 몸무게가 모두 높은 사람의 수만큼 등수를 더하고 나서, 등수를 이어 붙여서 출력하였다.