๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Algorithm/์ธํ”„๋Ÿฐ(inflearn)

[ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript) ] 21 - ๋“ฑ์ˆ˜ ๊ตฌํ•˜๊ธฐ

by YWTechIT 2021. 8. 13.
728x90

๐Ÿ“ 21 - ๋“ฑ์ˆ˜ ๊ตฌํ•˜๊ธฐ

์ด ๋ฌธ์ œ๋Š” boj7568 - ๋ฉ์น˜์™€ ๋น„์Šทํ•œ ๋ฌธ์ œ๋‹ค. ๋“ฑ์ˆ˜ ๊ตฌํ•˜๊ธฐ ๋ฌธ์ œ๊ฐ€ ์‰ฝ๋‹ค๋ฉด ๋ฉ์น˜ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด์ž. ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฐพ๋Š” bruteForce ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€๋ฉด ๋˜๋Š”๋ฐ, ๋ชจ๋“  ๊ฐ’์„ 1๋กœ ๋นˆ ๋ฐฐ์—ด์„ ์ดˆ๊ธฐํ™” ์‹œํ‚ฌ ๋•Œ Array.from์„ ์ด์šฉํ–ˆ๋‹ค.

 

let n = 5;
let arr = [87, 89, 92, 100, 76];

console.log(solution(n, arr));

// ๋‚˜์˜์ฝ”๋“œ
function solution(n, arr) {
  let ans = [];

  for (let i = 0; i < n; i++) {
    let rank = 1;
    for (let j = 0; j < n; j++) {
      if (arr[i] < arr[j]) rank++;
    }
    ans.push(rank);
  }

  console.log(ans)
}

 

// ๊ฐ•์‚ฌ๋‹˜ ์ฝ”๋“œ
let n = 5;
let scores = [100, 88, 76, 88, 76];

console.log(solution(n, scores));

function solution(n, scores) {
  let answers = Array.from({ length: n }, () => 1);

  for (let i = 0; i < n; i++) {
    for (let j = 0; j < n; j++) {
      if (scores[j] > scores[i]) {
        answers[i]++;
      }
    }
  }
  return answers;
}

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€