728x90

https://www.acmicpc.net/problem/7568

Code

최종 제출 코드

😢 브루트 포스 감을 익힌 문제. 간단하다.

😊 2차원 배열로 키와 몸무게를 정렬해주고 중첩 for loop을 이용하면 된다.
첫 번째 사람부터 마지막 사람까지 본인보다 큰 몸무게&&키가 있다면 counter++; 해주고,
마지막 rank 배열에 저장할 때 +1을 한 번 더 해주면 그게 본인 순위가 된다.

모든 경우의 수를 비교하는 '브루트 포스(Brute-force)'

Full Code (https://github.com/DasolPark/Dasol_JS_Algorithm/tree/master/Baekjoon)

// A big person
 
// For submit
 
// const fs = require('fs');
// const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');
 
// For local test
const input = ['5', '55 185', '58 183', '88 186', '60 175', '46 155'];
const T = input.shift();
const kgCmTable = input.map(kgCm => kgCm.split(' ').map(num => parseInt(num)));
const rank = [];
 
for (let i = 0; i < T; i++) {
let counter = 0;
for (let j = 0; j < T; j++) {
if (i !== j) {
if (
kgCmTable[i][0] < kgCmTable[j][0] &&
kgCmTable[i][1] < kgCmTable[j][1]
) {
counter++;
}
}
}
rank.push(counter + 1);
}
 
console.log(rank.join(' '));

+ Recent posts