11/21

๐Ÿ“ ํ•  ์ผ

  • ๋ฐฑ์ค€ 5๋ฌธ์ œ
  • ์ˆ˜๊ฐ•์ƒ ๊ฐ„ ์ฝ”๋“œ๋ฆฌ๋ทฐ

 

โœ… ํ•œ ์ผ

  • ๋ฐฑ์ค€ 5๋ฌธ์ œ

 ๋ธŒ๋ก ์ฆˆ 4 ๋งˆ์ง€๋ง‰ 4๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค

๋‹ค๋ฅธ ๊ฑด ๊ดœ์ฐฎ์•˜๋Š”๋ฐ 25965๋ฒˆ ๋ฏธ์…˜๋„๋„ค์ด์…˜ ๋ฌธ์ œ๊ฐ€ ์ง„์งœ ๋„ˆ๋ฌด๋„ˆ๋ฌด ์–ด๋ ค์› ๋‹ค

๊ทธ๋ž˜์„œ ๊ฒฐ๊ตญ ํ’€์ง€ ๋ชปํ•˜๊ณ  ๋‹ค์Œ๋‚  ์Šคํ„ฐ๋”” ํŒ€์›ํ•œํ…Œ ๋ฌผ์–ด๋ด์„œ ํ•ด๊ฒฐํ–ˆ๋‹ค

ํŒ€์›๋ถ„๋„ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ๋‹ค๊ฐ€ ํ•ด๊ฒฐํ•œ ๋ฌธ์ œ๋‹ค

๊ตฌ๊ธ€๋งํ•  ๋•Œ ์–ด๋–ค ๋ถ„์ด ์ด ๋ฌธ์ œ๋Š” ๋ธŒ๋ก ์ฆˆ 4๊ฐ€ ์•„๋‹Œ ๊ฒƒ ๊ฐ™๋‹ค๊ณ  ํ•˜์…จ๋Š”๋ฐ ๊ฒฉํ•˜๊ฒŒ ๋™์˜ํ•œ๋‹ค

๊ทผ๋ฐ ๋ช‡ ์ผ ํ›„ ๋‹ค์‹œ ๋“ค์–ด๊ฐ€๋ณด๋‹ˆ ๋ธŒ๋ก ์ฆˆ 4 ์—์„œ ์—†์–ด์กŒ๋‹ค ๐Ÿ˜‘

ํ•ด๋‹น ๋ฌธ์ œ๋Š” ์ž…๋ ฅ๋ฐ›์€ ๊ฒƒ์„ ์–ด๋–ป๊ฒŒ ๊ตฌ๋ถ„ํ• ์ง€๊ฐ€ ๊ด€๊ฑด์ธ๋ฐ

const filePath = process.platform === "linux" ? 0 : "example.txt";
let input = require("fs")
  .readFileSync(filePath)
  .toString()
  .trim()
  .split("\n")
  .map((el) => el.trim());
let ans = [];
for (let i = 1; i < input.length; i++) {
  if (input[i].length === 1) {
    //if (input[i].split(' ').length === 1) { --> ์ด๋ ‡๊ฒŒ ์ˆ˜์ •ํ•ด์ฃผ๋ฉด ์ •๋‹ต
    let M = Number(input[i]);
    let sum = 0n;
    let [k, d, a] = input[i + M + 1].split(" ").map(BigInt);
    for (let j = 1; j <= M; j++) {
      let [K, D, A] = input[i + j].split(" ").map(BigInt);
      if (K * k + A * a - D * d > 0n) sum += K * k + A * a - D * d;
    }
    ans.push(sum);
  }
}
console.log(ans.join("\n"));

์ด๋ ‡๊ฒŒ ํ‘ธ๋Š” ๊ฒƒ์ด ๋‹ต์ด์—ˆ๋‹ค...

ํŒ€์›๋ถ„์€ ๊ธธ์ด๊ฐ€ 1์ผ ๋•Œ๋กœ ๊ตฌ๋ถ„ํ•ด์คฌ๋‹ค

 

 

  • ์ˆ˜๊ฐ•์ƒ ๊ฐ„ ์ฝ”๋“œ๋ฆฌ๋ทฐ

์ฒซ๋ฒˆ์งธ ์ˆ˜๊ฐ•์ƒ๋ถ„!

1. index.html

(1) 56๋ฒˆ

๋‹ค๋ฅธ ์ด์œ ๊ฐ€ ์—†์œผ์‹œ๋‹ค๋ฉด class ๋กœ main ๊ณผ section ์„ ์ง€์ •ํ•˜๋Š” ๊ฒƒ ๋ณด๋‹ค main, section ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์‹œ๋ฉ˜ํ‹ฑํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

(2) 99๋ฒˆ

์œ„ 57๋ฒˆ ์ค„์—์„œ search-container ๋ผ๊ณ  ์“ฐ์…จ๋“ฏ์ด detail-container ๋ผ๊ณ  ๋ช…์‹œํ•ด์ฃผ๋Š” ๊ฒƒ์ด ๋” ํ†ต์ผ์„ฑ์ด ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

 

2. detail.js

(1) 9, 10๋ฒˆ

๋‘ ์ค„ ๋ฐ–์— ์—†์–ด์„œ ๋ง์”€๋“œ๋ฆฌ๊ธฐ๊ฐ€ ์กฐ๊ธˆ ๋ฏผ๋งํ•˜์ง€๋งŒ console.log ์™€ ์ฃผ์„์€ ๊ฐ€๋Šฅํ•˜๋ฉด ์ง€์šฐ๊ณ  ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์ด ๋” ๋‚ซ๋‹ค๊ณ  ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค

 

3. getDetail.js

(1) 3๋ฒˆ

Promise ์ƒ์„ฑ์ž์™€ resolve, reject ๋„ ์‚ฌ์šฉํ•˜์…จ๋„ค์š” ํ˜น์‹œ ์ด๋ฒˆ์— ๊ฐ•์‚ฌ๋‹˜์„ ํ†ตํ•ด ๋ฐฐ์šด ๊ฒƒ์„ ํ™œ์šฉํ•˜์…จ๋‹ค๋ฉด ๋ฐฐ์šด ๊ฒƒ์„ ๋ชจ๋‘ ํ™œ์šฉํ•ด๋ณด๋Š” ์ž์„ธ ๋ฉ‹์žˆ๊ณ  ๋ณธ ๋ฐ›์•„์•ผ ํ•  ์ ์ธ ๊ฒƒ ๊ฐ™์•„์š”

 

4. renderDetail.js

(1) 29๋ฒˆ

ํ…œํ”Œ๋ฆฟ ๋ฆฌํ„ฐ๋Ÿด ๋ฐฑํ‹ฑ์„ ์‚ฌ์šฉํ•˜์…จ์œผ๋‹ˆ `/${details.Ratings[i].Source}.png` ์ด๋ ‡๊ฒŒ ๋ณ€๊ฒฝํ•ด๋„ ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

 

5. css

๊ฐ€๋” ์˜ํ™” ์ œ๋ชฉ์ด ๋งŽ์ด ๊ธธ๋ฉด ์˜ํ™” ๋ชฉ๋ก์„ ๋ณด์—ฌ์ค„ ๋•Œ ๊ธธ์ด์—๋„ ์˜ํ–ฅ์„ ์ค˜์„œ ์ผ์ •ํ•˜์ง€ ์•Š์•„ ๋ณด์ž…๋‹ˆ๋‹ค ํ˜น์‹œ ์‹ค๋ก€๊ฐ€ ์•ˆ๋˜๋ฉด ๋‘์ค„ ์ •๋„ ์ด์ƒ ๋˜์—ˆ์„ ๋•Œ ๋ง์ค„์ž„ํ‘œ๋ฅผ ํ•ด์ฃผ๋Š” ๊ฒƒ์ด ์–ด๋–จ๊นŒ์š”?

`

overflow: hidden;

text-overflow: ellipsis;

display: -webkit-box;

-webkit-line-clamp: 2;

-webkit-box-orient: vertical;

`

**๋ณ€๊ฒฝ ํ›„**

![image](https://user-images.githubusercontent.com/103119275/202917429-53673197-5212-4fc7-8189-2c5372239d19.png)

 

 

๋‘๋ฒˆ์งธ ์ˆ˜๊ฐ•์ƒ๋ถ„!

1. css

- ๋ชจ๋“ˆํ™”๋ฅผ ํ•˜์…จ๋„ค์š” ์ €๋Š” ๋งค๋ฒˆ ์ฒ˜์Œ๋ถ€ํ„ฐ ํ•˜์ง€ ์•Š์•„์„œ ๋‚˜์ค‘ ๊ฐ€๋ฉด ์ฝ”๋“œ ์ •๋ฆฌ๋Š” ๋Œ€์ถฉํ•˜๊ณค ํ•˜๋Š”๋ฐ ๊น”๋”ํ•œ ๊ฒƒ ๊ฐ™๋„ค์š”

 

2. header.css

(1) 20๋ฒˆ

max-width ์™€ min-width ๋ฅผ ์ •ํ•ด์ฃผ์‹  ์ด์œ ๊ฐ€ ์žˆ์„๊นŒ์š”?

ํ˜น์‹œ ๋‚˜์ค‘์— ๋ฐ˜์‘ํ˜•์„ ์ถ”๊ฐ€ํ•˜์‹ ๋‹ค๋ฉด max-width ์™€ min-width ๋ฅผ ๋‘˜ ๋‹ค ์ง€์ •ํ•˜๋ฉด ํ™”๋ฉด์„ ์ค„์˜€์„ ๋•Œ ํ™”๋ฉด ๋ฐ–์œผ๋กœ ๋‚˜๊ฐ€๋Š” ํ˜„์ƒ์ด ์žˆ์–ด์„œ width: 1000px ๋งŒ ์ ์šฉํ•ด๋„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ ๊ฐ™์•„ ๋ง์”€๋“œ๋ ค์š”

 

3. main.css

(1) 3๋ฒˆ

ํ˜น์‹œ info.css ์™€ header.css ์˜ ๊ธฐ๋ณธ์„ค์ •์ด ๋™์ผํ•ด๋ณด์ด๋Š”๋ฐ ๋งž์„๊นŒ์š”? ์ค‘๋ณต๋˜๋Š” ์ฝ”๋“œ๋Š” ๋ชจ๋“ˆํ™”๋ฅผ ํ•˜๋Š” ๊ฒƒ์ด ์ข€ ๋” ๋‚˜์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

 

(2) 181๋ฒˆ

์˜ํ™” ์ œ๋ชฉ์ด ๋งŽ์ด ๊ธธ๋ฉด ์˜ํ™” ๋ชฉ๋ก์„ ๋ณด์—ฌ์ค„ ๋•Œ ๊ธธ์ด์—๋„ ์˜ํ–ฅ์„ ์ค˜์„œ ์ผ์ •ํ•˜์ง€ ์•Š์•„ ๋ณด์ž…๋‹ˆ๋‹ค ํ˜น์‹œ ์‹ค๋ก€๊ฐ€ ์•ˆ๋˜๋ฉด ๋‘์ค„ ์ •๋„ ์ด์ƒ ๋˜์—ˆ์„ ๋•Œ ๋ง์ค„์ž„ํ‘œ๋ฅผ ํ•ด์ฃผ๋Š” ๊ฒƒ์ด ์–ด๋–จ๊นŒ์š”?

์ด๋ ‡๊ฒŒ ์ ์šฉํ•˜์‹œ๋ฉด ์•„๋งˆ position: absolute ๋•Œ๋ฌธ์— ๋ฐ‘์— ๊ธ€์”จ๊ฐ€ ๋” ๋ณด์ผํ…๋ฐ ์ €๋Š” ๊ทธ ๋ถ€๋ถ„์„ ๋”ฐ๋กœ txt ๊ตฌ์—ญ์œผ๋กœ ๊ฐ์‹ธ์„œ ๊ตฌ์—ญ์— position: absolute ๋ฅผ ์ ์šฉํ•ด์ฃผ์—ˆ์œผ๋‹ˆ ํ˜น์‹œ ๋ง์ค„์ž„ํ‘œ๋ฅผ ์ ์šฉํ•œ๋‹ค๋ฉด ์ฐธ๊ณ ํ•ด์ฃผ์‹œ๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

 

`

overflow: hidden;

text-overflow: ellipsis;

display: -webkit-box;

-webkit-line-clamp: 2;

-webkit-box-orient: vertical;

`

 

**๋ณ€๊ฒฝ ํ›„**

![image](https://user-images.githubusercontent.com/103119275/202919839-417887a6-9c37-445d-a7a7-a5a387eb32b8.png)

 

 

 

 

 

11/22

๐Ÿ“ ํ•  ์ผ

  • ๋ฐฑ์ค€ 5๋ฌธ์ œ
  • ๋ฆฌ์•กํŠธ ๊ฐ•์˜ create-react-app ํŒŒํŠธ ์ˆ˜๊ฐ•

 

โœ… ํ•œ ์ผ

  • ๋ฐฑ์ค€ 5๋ฌธ์ œ

๋“œ๋””์–ด ๋ธŒ๋ก ์ฆˆ 3 ์— ์ง„์ž…ํ–ˆ๋‹ค ๋ธŒ๋ก ์ฆˆ 3 ์„ ๋จผ์ € ํ’€์–ด๋ณธ ์Šคํ„ฐ๋”” ํŒ€์›๋ถ„์ด ์–ด๋ ต๋‹ค๊ณ  ๋ง์„ ํ•ด์ฃผ์…”์„œ ์กฐ๊ธˆ ๋ฌด์„œ์› ๋‹ค

์•„๋‹ˆ๋‚˜ ๋‹ค๋ฅผ๊นŒ ๋ฌธ์ œ ์ž์ฒด๋ฅผ ์ดํ•ดํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์šด ๋ฌธ์ œ๊ฐ€ ๋‚˜์™”๋‹ค

1085 ๋ฒˆ ์ง์‚ฌ๊ฐํ˜•์—์„œ ํƒˆ์ถœ ๋ฌธ์ œ๋Š” ๊ทธ๋ ค์„œ ์ดํ•ดํ•ด๋ดค๋Š”๋ฐ ์ฒ˜์Œ์—” ์–ด๋ ต๊ฒŒ ํ’€๋‹ค๊ฐ€ ๊ทœ์น™์„ ๋ฐœ๊ฒฌํ•ด์„œ ํ’€๊ฒŒ ๋˜์—ˆ๋‹ค ๋‚ด ์œ„์น˜๊ฐ€ ๊ณง ์ง์‚ฌ๊ฐํ˜•์˜ ๊ฒฝ๊ณ„์„ ๊นŒ์ง€ ๊ฐ€๋Š” ๊ธธ์ด๊ณ , ๊ทธ ๋ฐ˜๋Œ€ ๊ฒฝ๊ณ„์„ ๊นŒ์ง€ ๊ฐ€๋Š” ๊ธธ์ด๊ฐ€ ์ง์‚ฌ๊ฐํ˜•์˜ w ์™€ y ๋ฅผ ๋‚ด ์œ„์น˜์—์„œ ๋นผ์ฃผ๋Š” ๊ฒƒ์ด์—ˆ๋‹ค

1247 ๋ฒˆ ๋ถ€ํ˜ธ ๋ฌธ์ œ๋Š” ์ž…๋ ฅ ์ˆซ์ž๋“ค์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ด์„œ ์ผ๋‹จ ํŒ€์›๋ถ„ ์ฝ”๋“œ๋ฅผ ์ฐพ์•„ ๋ณด๊ธด ํ–ˆ๋Š”๋ฐ ๊ทธ๋ž˜๋„ ์ดํ•ด๊ฐ€ ์ž˜ ๋˜์ง€ ์•Š์•˜๋‹ค ์ „๋‚  ํ‘ผ ๋ฏธ์…˜๋„๋„ค์ด์…˜ ๋ฌธ์ œ์™€ ์œ ์‚ฌํ•˜๊ฒŒ ์ž…๋ ฅ์„ ๋ฐ›์€ ๊ฒƒ์„ ๊ตฌ๋ถ„ํ•˜๋Š” ๊ฒŒ ๊ด€๊ฑด์ธ ๊ฒƒ ๊ฐ™์€๋ฐ ์ž…๋ ฅ ์ˆซ์ž๋“ค์ด ์–ด๋–ค ์˜๋ฏธ์ธ์ง€๊ทธ๋ž˜์„œ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ‘ผ ํŒ€์›ํ•œํ…Œ ๋ฌผ์–ด๋ดค๋‹ค

 

 

  • ๋ฆฌ์•กํŠธ ๊ฐ•์˜ create-react-app ํŒŒํŠธ ์ˆ˜๊ฐ•

๋‹ค๋ฅธ ๊ฑด ๋‹ค ์•Œ๊ณ  ์žˆ์–ด์„œ ํŠน๋ณ„ํ•œ ๊ฑด ์—†์—ˆ๊ณ  css module ์ฆ‰ post css ๋ฅผ ๋‹ค์‹œ ๋ฐฐ์› ๋‹ค

์†”์งํžˆ css module ์ด๋ผ๊ณ ๋งŒ ์•Œ๊ณ  ์žˆ์—ˆ์ง€ ๊ฑฐ์˜ ์ˆœ์ˆ˜ css ๋‚˜ scss ๋ฅผ ์จ์„œ ๋‚ด๊ฐ€ ์ด์ œ๊ป ๋ฐฐ์šด ๊ฒŒ css module ์ด๊ณ  post css ์ธ์ง€๋„ ๋ชฐ๋ž๋‹ค

ํŒ€์›๋ถ„์ด post css ๋ผ๊ณ  ํ•˜์‹œ๊ธธ๋ž˜ ๋ญ”์ง€ ๋ชฐ๋ž๋Š”๋ฐ ๋ฌผ์–ด๋ดค๋”๋‹ˆ ๋‚ด๊ฐ€ ๋ฐฐ์šด ๊ฑฐ์˜€๋”๋ผ^^..

 

 

 

 

 

 

11/23

๐Ÿ“ ํ•  ์ผ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ์ด๋ถ„ ๊ฒ€์ƒ‰ ํŒŒํŠธ ๋ณต์Šต
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ๊ทธ๋ฆฌ๋”” ํŒŒํŠธ ๋ณต์Šต

 

โœ… ํ•œ ์ผ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ์ด๋ถ„ ๊ฒ€์ƒ‰ ํŒŒํŠธ ๋ณต์Šต

๋ฐ์ดํ„ฐ ์„ผํ„ฐ ๋ฌธ์ œ๋Š” ์ ˆ๋ฐ˜ ์ด์ƒ์˜ ์ปดํ“จํ„ฐ๊ฐ€ ์ฐจ๊ฐ€์šด ๊ณต๊ธฐ๋ฅผ ๋ฐ›๊ธฐ ์œ„ํ•ด ๋ƒ‰๊ฐ๊ธฐ๋ฅผ ์ตœ์†Œ ๋ช‡ ๋ถ„ ๊ฐ€๋™ํ•ด์•ผ ํ•˜๋Š”์ง€ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค

function solution(borad) {
  let answer = 0;
  let left = 1,
    right = 0,
    sum = 0;
  borad.forEach((el) => {
    right = Math.max(right, Math.max(...el)); // Math.max(...el) ๊ฐ ๋ฐฐ์—ด์—์„œ ๋น„๊ตํ•œ ๊ฒƒ์—์„œ ๋‚˜์˜จ ์ตœ๋Œ€ ๊ฐ’๊ณผ ๋‹ค์Œ ๋ฐฐ์—ด์—์„œ ๋‚˜์˜จ ์ตœ๋Œ€๊ฐ’์„ ๊ณ„์†ํ•ด์„œ ๋น„๊ตํ•จ
    sum += el.reduce((a, b) => a + b, 0); // ๊ฐ ๋ฐฐ์—ด์„ ๋”ํ•ด์ค€ ๊ฐ’์„ sum ์— ๋ˆ„์ ํ•ด์„œ ์ „์ฒด ๊ฐ’์˜ ํ•ฉ์„ ๊ตฌํ•จ
  });
  console.log(right);

  // count function : mid ๊นŒ์ง€ ๋ƒ‰๋ฐฉ๊ธฐ๋ฅผ ํŠผ ๊ฒƒ์˜ ์ปดํ“จํ„ฐ๋“ค์„ ๋‹ค ๋”ํ•ด์ค˜์•ผ ํ•จ
  function count(mid) {
    let cnt = 0;
    borad.forEach((e) => {
      for (x of e) {
        if (x >= mid)
          cnt += mid; // x = 9, mid = 5 ๋ฉด mid ๊ฐ€ ๋” ์ž‘์œผ๋‹ˆ mid ๊นŒ์ง€ ๋”ํ•˜๊ณ 
        else cnt += x; // ๋ฐ˜๋Œ€๋กœ x = 3, mid = 5 ๋ฉด x ๊ฐ€ ๋” ์ž‘์œผ๋‹ˆ x ๊นŒ์ง€๋งŒ ๋”ํ•ด์คŒ
      }
    });
    return cnt;
  }

  // ์ด๋ถ„ ๊ฒ€์ƒ‰
  while (left <= right) {
    mid = parseInt(left + right / 2); // mid ๋ถ„๊นŒ์ง€ ๋ƒ‰๋ฐฉ๊ธฐ๋ฅผ ํŠผ๋‹ค
    if (count(mid) >= sum / 2) {
      // ์ปดํ“จํ„ฐ๋“ค์„ ๋ฐ˜ ๋‚˜๋ˆ ์„œ ๊ทธ๊ฒƒ๋ณด๋‹ค ํฌ๋ฉด ์ •๋‹ต
      answer = mid;
      right = mid - 1; // ๊ทธ๋Ÿฌ๋‚˜ ๋” ๋‚˜์€ ๊ฐ’์„ ์ฐพ์•„์ค˜์•ผ ํ•˜๋‹ˆ ๋” ์ตœ์†Œ๊ฐ’์„ ์ฐพ๊ธฐ ์œ„ํ•ด right ๋ฅผ mid ๋ณด๋‹ค ์ž‘๊ฒŒ
    } else left = mid + 1; // ์•„๋‹ˆ๋ผ๋ฉด ๋” ํฐ ๊ฐ’์„ ์ฐพ์•„์ค˜์•ผ ํ•˜๋‹ˆ ์ •๋‹ต์„ ์ฐพ๊ธฐ ์œ„ํ•ด left ๋ฅผ mid ๋ณด๋‹ค ํฌ๊ฒŒ
  }
  return answer;
}

console.log(
  solution([
    [15, 3, 1, 5, 6],
    [3, 0, 7, 4, 3],
    [8, 5, 7, 5, 6],
    [9, 6, 1, 5, 5],
    [5, 5, 8, 5, 1],
  ])
);

 

 

๋งˆ๊ตฌ๊ฐ„ ์ •ํ•˜๊ธฐ ๋ฌธ์ œ๋Š” ์ตœ๋Œ€ ์ขŒํ‘œ๊นŒ์ง€์—๋‹ค๊ฐ€ c ๊ฐœ์˜ ๋ง์„ ๋ฐฐ์น˜ํ•ด์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋‘ ๋ง์˜ ์ตœ๋Œ€ ๊ฑฐ๋ฆฌ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค

function solution(nums, c) {
  let answer = 0;
  nums.sort((a, b) => a - b);
  let left = 1,
    right = Math.max(...nums);

  function count(mid) {
    let cnt = 1; // ์ œ์ผ ์™ผ์ชฝ์— ๋ง ํ•˜๋‚˜ ๋ฐฐ์น˜
    let endPoint = nums[0]; // ์ตœ๊ทผ์— ๋„ฃ์€ ๋ง์˜ ์ขŒํ‘œ
    for (let i = 1; i < nums.length; i++) {
      //
      if (nums[i] - endPoint >= mid) {
        cnt++;
        endPoint = nums[i];
      }
    }
    return cnt;
  }

  while (left <= right) {
    let mid = parseInt((right + left) / 2);
    if (count(mid) >= c) {
      answer = mid;
      left = mid + 1;
    } else right = mid - 1;
  }

  return answer;
}

console.log(solution([1, 2, 8, 4, 9], 3)); // 3
console.log(solution([5, 9, 10, 12, 14, 15], 3)); // 5

 

 

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ๊ทธ๋ฆฌ๋”” ํŒŒํŠธ ๋ณต์Šต

 ์‚ฌ์‹ค ๊ทธ๋ฆฌ๋””๊ฐ€ ๋ญ”์ง€ ์ดํ•ดํ•˜๊ณ  ํ‘ผ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ์„œ ๋Œ€์ถฉ sort ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜๋ฉด ๋˜๋Š”๊ตฌ๋‚˜ ํ•˜๋ฉด์„œ ํ’€์—ˆ๋‹ค

์„ ๊ธ‹๊ธฐ ๋ฌธ์ œ๋Š” ์ˆ˜์ง์„ ์ƒ์˜ ์ ๊ณผ ์ ์‚ฌ์ด๋ฅผ ์ž‡๋Š” ์„ ๋“ค์˜ ์ด ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค

์‹œ์ž‘ ์ขŒํ‘œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ, ํ•œ ์„ ์—์„œ s ๋Š” ์ฒซ ์ ์ด๊ณ  e ๋Š” ๋ ์ , ๊ทธ ๋‹ค์Œ ์„ ์ด e ๋ผ๋Š” ๊ฐ’์ด ๋‹ค์Œ ์„ ์˜ ์‹œ์ž‘์ ๋ณด๋‹ค ์ž‘์€์ง€ ํฐ์ง€ ํŒ๋ณ„ํ•˜๊ณ , ์ž‘๋‹ค๋ฉด e ๋ฅผ ๋‹ค์Œ์„ ์˜ ๋์ ์œผ๋กœ ๋ณ€๊ฒฝ, ๊ทธ๋ฆฌ๊ณ  ๋ฐ˜๋ณตํ•ด์„œ ํŒ๋ณ„ํ•˜์—ฌ ํฌ๋‹ค๋ฉด ๋Š์–ด์ง„ ๊ฒƒ์„ ์˜๋ฏธํ•˜๋‹ˆ answer ์— e-s ๋ฅผ ๋ˆ„์ ํ•ด์ฃผ๊ณ  ๋งˆ์ง€๋ง‰ ์„ ์˜ e-s๋ฅผ answer ์— ๋ˆ„์ ํ•œ๋‹ค

for ๋ฌธ์€ ๋‘๋ฒˆ์งธ ์„ ๋ถ€ํ„ฐ ๋Œ๊ณ  ๋งŒ์•ฝ ์‹œ์ž‘์ ์ด e ๊ฐ’๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๊ณ  ๋์ ์ด e ๋ณด๋‹ค ํด ๋•Œ e ๋Š” nums ๋Š” nums[i][1]

์—ฌ๊ธฐ์„œ ์„  ์•ˆ์— ๋‹ค๋ฅธ ์„ ์ด ํฌํ•จ๋˜์–ด ์žˆ์„ ๋•Œ๋Š” ์—†๋Š” ๊ฑธ๋กœ ์ณ์•ผ ํ•œ๋‹ค

ํšŒ์˜์‹ค ๋ฐฐ์ • ๋ฌธ์ œ๋Š” ๊ทธ๋ฆฌ๋””๋Š” ๊ณง ํšŒ์˜์‹ค ๋ฐฐ์ •์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์„ ์ •๋„๋กœ ์œ ๋ช…ํ•˜๋‹ค๊ณ  ํ•œ๋‹ค

ํšŒ์˜์‹ค์€ ํ•˜๋‚˜์ธ๋ฐ ํšŒ์˜๊ฐ€ ๊ฒน์น˜์ง€ ์•Š๊ณ  ํšŒ์˜๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ํšŒ์˜์˜ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค

๊ทธ๋ฆฌ๋””๋Š” ๋ฐ˜๋ก€๋ฅผ ์ฐพ์•„์•ผ ํ•˜๋Š”๋ฐ ์ด ๋ฌธ์ œ์—์„œ๋Š” ๊ธด ํšŒ์˜๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๊ณ  ์ž์ž˜ํ•œ ํšŒ์˜๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค ๊ทธ๋Ÿด ๋•Œ ๊ธด ํšŒ์˜๊ฐ€ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ๋งจ ์•ž์ด๋ผ๊ณ  ๊ทธ๊ฑธ ํ•  ์ˆ˜ ์žˆ๋Š” ํšŒ์˜๋กœ ๋ฐ˜ํ™˜ํ•ด๋ฒ„๋ฆฌ๋ฉด ํšŒ์˜๋Š” ํ•˜๋‚˜๋ฐ–์— ํ•˜์ง€ ๋ชปํ•œ๋‹ค๋Š” ๊ฒƒ์ด ๋ฐ˜๋ก€์ด๋‹ค

๊ทธ๋ž˜์„œ ์‹œ์ž‘์‹œ๊ฐ„์œผ๋กœ ์ •๋ ฌํ•˜์ง€ ์•Š๊ณ  ๋๋‚˜๋Š” ์‹œ๊ฐ„์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌํ•˜๊ณ , et ๋Š” ํšŒ์˜๊ฐ€ ๋๋‚˜๋Š” ์‹œ๊ฐ„, et ๋ณด๋‹ค ํšŒ์˜๊ฐ€ ์‹œ์ž‘ํ•˜๋Š” ์‹œ๊ฐ„์ด ๊ฐ™๊ฑฐ๋‚˜ ํฌ๋ฉด ํšŒ์˜๋ฅผ ํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ et ๋ฅผ ํ•ด๋‹นํ•˜๋Š” ํšŒ์˜์˜ ๋๋‚˜๋Š” ์‹œ๊ฐ„์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  answer ๋ฅผ ์ฆ๊ฐ€์‹œํ‚จ ๊ฒƒ์„ ๋ฐ˜๋ณตํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•œ๋‹ค

 

 

 

 

 

11/24

๐Ÿ“ ํ•  ์ผ

  • ๋ฐฑ์ค€ ๋ธŒ๋ก ์ฆˆ3 5๋ฌธ์ œ
  • ๋ฆฌ์•กํŠธ effects ๊ฐ•์˜ ์ˆ˜๊ฐ•

 

โœ… ํ•œ ์ผ

  • ๋ฐฑ์ค€ 1๋ฌธ์ œ(…)

ํ’€๊ธด ํ’€์—ˆ์ง€๋งŒ 2์‹œ๊ฐ„์ด๋‚˜ ๊ฑธ๋ ธ๋‹ค ์›๋ž˜ 2์‹œ๊ฐ„ ์•ˆ์— 5๋ฌธ์ œ๋ฅผ ํ’€๋ ค๊ณ  ํ–ˆ์œผ๋‚˜ ๊ตฌ๊ธ€์— ๋‹ต๋„ ์•ˆ๋‚˜์™€์„œ ์–ผ๋ฅธ ํ’€์ž ํ–ˆ๋Š”๋ฐ 1๋ฌธ์ œ ํ‘ธ๋Š”๋ฐ ์‹œ๊ฐ„์„ ๋‹ค ์จ๋ฒ„๋ ธ๋‹ค...

๋ธŒ๋ก ์ฆˆ๋ฉด ์ฝ”ํ…Œ์—์„œ ๋‚˜์˜ค์ง€๋„ ์•Š์„ ๋ฌธ์ œ์ธ๋ฐ ์ด๋ ‡๊ฒŒ ์˜ค๋ž˜ ๊ฑธ๋ ค์„œ ์šฐ์งœ๋‚˜...

1598๋ฒˆ ๊ผฌ๋ฆฌ๋ฅผ ๋ฌด๋Š” ์ˆซ์ž ๋‚˜์—ด ๋ฌธ์ œ์ธ๋ฐ ์ˆซ์ž์™€ ์ˆซ์ž ์‚ฌ์ด์˜ ์ด๋™๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค

๋จผ์ € ๊ฐ ์ˆซ์ž๋ฅผ ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์ž์™€ ๋‚˜๋ˆ„๊ธฐ ์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•ด ์ขŒํ‘œ๋ฅผ ๊ตฌํ•˜๊ณ  ๊ฐ ์ขŒํ‘œ๋ฅผ ๋นผ์ค€ ๊ฐ’์—์„œ ๋”ํ•ด์ฃผ๋ฉด ๋œ๋‹ค

 

 

  • ๋ฆฌ์•กํŠธ effects ๊ฐ•์˜ ์ˆ˜๊ฐ•

์‚ฌ์‹ค useEffect ๋„ ์ฒ˜์Œ ๋ฐฐ์šธ ๋•Œ ์ •ํ™•ํžˆ ์ดํ•ดํ•˜๊ณ  ์“ด ๊ฑด ์•„๋‹ˆ๋ผ์„œ ์ด์ œ์•ผ ์ข€ ์ดํ•ด๊ฐ€ ์ž˜ ๋˜๋Š” ๋А๋‚Œ์ด์—ˆ๋‹ค

์“ฐ๋ฉด์„œ๋„ ์ด๊ฒŒ ๋งž๋‚˜? ๋ผ๋Š” ๋А๋‚Œ์ด์—ˆ๋Š”๋ฐ ์ด์ œ๋Š” ์ข€ ์•Œ๊ณ  ์“ธ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค

ํŠนํžˆ cleanup ์€ ์•Œ์ง€๋„ ๋ชปํ–ˆ๋˜ ๊ธฐ๋Šฅ์ด์—ˆ๋Š”๋ฐ ํ™•์‹คํžˆ ๋งŽ์ด ์“ธ ์ผ์€ ์—†์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค

์–ด๋–ค ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ–ˆ๋‹ค๊ฐ€ ์ง€์šธ ๋•Œ๋„ ์–ด๋–ค ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰์‹œ์ผœ ์ง€์›Œ์ค„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ธฐ๋Šฅ์œผ๋กœ? ์ดํ•ดํ–ˆ๋‹ค

 

 

 

 

 

11/25

๐Ÿ“ ํ•  ์ผ

  • ๋ฐฑ์ค€ ๋ธŒ๋ก ์ฆˆ3 1๋ฌธ์ œ(…)
  • ์žฌ๊ท€ ์šฉ๋ฒ• ๊ฐ•์˜
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ณต์Šต

 

โœ… ํ•œ ์ผ

  • ๋ฐฑ์ค€ ๋ธŒ๋ก ์ฆˆ3 1๋ฌธ์ œ(…)

์–ด์ œ 1703๋ฒˆ ์ƒ์žฅ์  ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๊ฐ€ ๋ฌธ์ œ ์ž์ฒด๊ฐ€ ์ดํ•ด๊ฐ€ ๋˜์ง€ ์•Š์•„์„œ ํŒ€์›์—๊ฒŒ ๋ฌผ์–ด๋ดค๋‹ค

๋‚˜๋ฌด์˜ ๋‚˜์ด, ์ƒ์žฅ์  ๊ฐœ์ˆ˜, ๊ฐ€์ง€์น˜๊ธฐ ๊ฐœ์ˆ˜, ์ƒ์žฅ์  ๊ฐœ์ˆ˜, ๊ฐ€์ง€์น˜๊ธฐ ๊ฐœ์ˆ˜, ...

ํ•œ ์ค„์— ๋‚˜๋ฌด์˜ ๋‚˜์ด๋งŒํผ ์ƒ์žฅ์  ๊ฐœ์ˆ˜์™€ ๊ฐ€์ง€์น˜๊ธฐ ๊ฐœ์ˆ˜๊ฐ€ ๋ฐ˜๋ณต๋˜์–ด ์ถœ๋ ฅ๋˜๊ณ  ๊ฐ ๋‚˜๋ฌด์— ๋Œ€ํ•œ ๋‚จ์€ ์ƒ์žฅ์  ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด ๋˜๋Š” ๊ฑฐ์˜€๋‹ค

๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๊ฐ ์ค„์— ๋Œ€ํ•ด ์ด์ค‘ for ๋ฌธ์„ ๋Œ๋ ค์„œ cnt ๋Š” ์ฒ˜์Œ ์ƒ์žฅ์  ๊ฐœ์ˆ˜๋กœ ์„ค์ •ํ•œ ๋’ค ํ˜„์žฌ ๊ฐ’์ด ์ง์ˆ˜๋ฒˆ์งธ์— ์žˆ๋Š” ์ˆซ์ž๋ฉด cnt ์™€ ํ˜„์žฌ ์ˆซ์ž ๋‹ค์Œ ์ˆซ์ž์™€ ๊ณฑํ•ด์„œ cnt ๊ฐ’์œผ๋กœ ๋„ฃ์–ด์ฃผ๊ณ  ํ™€์ˆ˜๋ฒˆ์งธ ์ˆซ์ž๋ฉด cnt ์—์„œ ๋‹ค์Œ ์ˆซ์ž๋ฅผ ๋นผ์„œ cnt ๊ฐ’์œผ๋กœ ๋„ฃ์–ด์คฌ๋‹ค

์ฆ‰ ์ƒ์žฅ์ ์— ๊ฐ€์ง€์น˜๊ธฐ๋ฅผ ๋นผ๊ณ  ๋‹ค์Œ ๋‚˜์ด์—๋Š” ๊ทธ ๊ฐ’์— ๊ทธ ๋‚˜์ด ์ƒ์žฅ์ ์„ ๊ณฑํ•˜๊ณ  ๊ทธ ๊ฐ’์— ๊ทธ ๋‚˜์ด ๊ฐ€์ง€์น˜๊ธฐ ๊ฐ’์„ ๋นผ์ค€ ๊ฒƒ์ด๋‹ค

 

 

  • ์žฌ๊ท€ ์šฉ๋ฒ• ๊ฐ•์˜

์˜ค๋Š˜ ์ž ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ˆ˜์—…์ธ ์žฌ๊ท€ํ•จ์ˆ˜์™€ DFS ๊ธฐ์ดˆ ํŒŒํŠธ๋ฅผ ์œ„ํ•ด ๊ฐ•์‚ฌ๋‹˜์ด ์žฌ๊ท€ ์šฉ๋ฒ• ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์˜ค๋ผ๊ณ  ํ•˜์…”์„œ ๊ธ‰ํ•˜๊ฒŒ ๋“ค์—ˆ๋‹ค

์žฌ๊ท€ ์šฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋งํ•˜๋ฉด ํ•จ์ˆ˜ ์•ˆ์—์„œ ์ž๊ธฐ ํ•จ์ˆ˜๋ฅผ ๋ถˆ๋Ÿฌ์„œ ์Šคํƒ ๋งˆ๋ƒฅ ํ˜ธ์ถœํ•œ ํ•จ์ˆ˜๋“ค์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์Œ“์•„์„œ ๋‚˜์ค‘์— ํ˜ธ์ถœํ•œ ํ•จ์ˆ˜ ๊ฐ’๋ถ€ํ„ฐ ์ถœ๋ ฅํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค

๋น„์Šทํ•œ ๋ฌธ์ œ๋“ค์„ ๊ณ„์† ์„ค๋ช…ํ•ด์ฃผ์…จ๋Š”๋ฐ ์›Œ๋‚™ ์ดํ•ดํ•˜๊ธฐ์— ๋ณต์žกํ•˜๊ฒŒ ๋Œ์•„๊ฐ€์„œ ๋‹ค ๋“ฃ๊ณ  ๋‚˜์„œ๋„ ๊ธด๊ฐ€๋ฏผ๊ฐ€ํ–ˆ๋‹ค

 

 

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ณต์Šต

๊ทธ๋ฆฌ๋”” ๊ณผ์ œ๋กœ ๋‚ด์คฌ๋˜ ์”จ๋ฆ„์„ ์ˆ˜ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ดค๋‹ค

์”จ๋ฆ„ ์„ ์ˆ˜ ๋ฌธ์ œ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด๋ž‘ ๋น„๊ตํ•ด์„œ ํ‚ค๋„ ํฌ๊ณ  ๋ชธ๋ฌด๊ฒŒ๋„ ๋ฌด๊ฑฐ์šด ์‚ฌ๋žŒ์ด ์žˆ์œผ๋ฉด ํƒˆ๋ฝ, ์—†์œผ๋ฉด ์„ ๋ฐœ๋˜๋Š”๋ฐ ๊ทธ์— ๋Œ€ํ•œ ์ตœ๋Œ€ ์ธ์› ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค

์ด ๋ฌธ์ œ๋Š” ํ‚ค๋‚˜ ๋ชธ๋ฌด๊ฒŒ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ์„ ๋จผ์ € ํ•ด์ค€ ๋’ค ๋‚˜๋จธ์ง€ ํ‚ค๋‚˜ ๋ชธ๋ฌด๊ฒŒ๋ฅผ ์ฐจ๋ก€๋กœ ๋น„๊ตํ•ด์ฃผ๋Š”๋ฐ ์ฒซ ์‚ฌ๋žŒ์˜ ๊ฐ’์„ max ๋กœ ๋„ฃ๊ณ  ๊ทธ max ๋ฅผ ๋‹ค์Œ ์‚ฌ๋žŒ์˜ ๊ฐ’๊ณผ ๋น„๊ตํ•˜์—ฌ ํฌ๋ฉด max ๊ฐ’์œผ๋กœ ๋„ฃ์–ด์ค€ ๋’ค ์นด์šดํŒ…์„ ํ•ด์ฃผ๊ณ  ์ž‘์œผ๋ฉด ํƒˆ๋ฝ์‹œํ‚จ๋‹ค 

 

์˜ค๋Š˜ ๋ฐฐ์šด ์žฌ๊ท€ํ•จ์ˆ˜์™€ DFS ๊ธฐ์ดˆ ํŒŒํŠธ๋Š” ์ดํ•ดํ•˜๊ธฐ์—๋งŒ ๊ธ‰๊ธ‰ํ•ด์„œ ๊ฑฐ์˜ ํ’€์–ด๋ณด์ง€๋Š” ๋ชปํ–ˆ๋‹ค

๋ฐฐ์šธ์ˆ˜๋ก ์ดํ•ด๊ฐ€ ์ ์  ๋˜์ง€ ์•Š๋Š” ๋А๋‚Œ์ด์—ˆ๋‹ค

๊ฐ•์‚ฌ๋‹˜์€ ์žฌ๊ท€ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ์ž์—ฐ์ˆ˜ n ์— ๋Œ€ํ•ด 1 ~ n ๊นŒ์ง€ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ๋กœ ์„ค๋ช…ํ•˜์…จ๋‹ค

1. ์Šคํƒ๊ณผ ๊ฐ™๋‹ค. ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜๋ฉด ์Šคํƒ์ด๋ผ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์— ์Šคํƒํ”„๋ ˆ์ž„์ด๋ผ๋Š” ๊ฒƒ์ด ์ƒ๊ธด๋‹ค

2. ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜๋ฉด ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ง€์—ญ๋ณ€์ˆ˜(ํ•จ์ˆ˜์•ˆ์—์„œ ์ƒ์„ฑ๋œ ๋ณ€์ˆ˜), ๋ณต๊ท€์ฃผ์†Œ(ํ•  ์ผ์ด ๋๋‚˜๋ฉด ์ œ์ž๋ฆฌ๋กœ ๋ณต๊ท€) ๋ฅผ ์ปจํŠธ๋กคํ•œ๋‹ค

3. ์Šคํƒ ์ƒ๋‹จ์˜ ํ”„๋ ˆ์ž„์ด ์ž‘๋™ํ•˜๊ณ  dfs(n-1) ์„ ๋งŒ๋‚˜๋Š” ์ˆœ๊ฐ„ ํ˜ธ์ถœ์ด ์ผ์–ด๋‚˜๋ฉด ๊ทธ ์ž๋ฆฌ๊นŒ์ง€ ํ–ˆ๋‹ค๊ณ  ์Šฌ๋ฆฝ์ƒํƒœ์— ๋“ค์–ด๊ฐ€๊ณ  dfs(2) ๊ฐ€ ์ž‘๋™๋œ๋‹ค.

4. ๋‹ค์‹œ 2์— ๋Œ€ํ•ด dfs(n-1) ํ˜ธ์ถœ๋˜๋ฉด ๊ทธ ์ž๋ฆฌ๊นŒ์ง€ ํ–ˆ๋‹ค๊ณ  ๊ธฐ์–ตํ•˜๊ณ  dfs(1) ์ด ํ˜ธ์ถœ, ์ด๊ฒƒ์ด ๋ฐ˜๋ณต๋œ๋‹ค

5. ๊ทธ๋ฆฌ๊ณ  dfs(0) ์ด ๋˜๋ฉด return ์ด ๋˜๊ณ  ์Šคํƒ์ƒ๋‹จ์˜ d(0) ์€ ๊ทธ๋ƒฅ ์Šคํƒ์—์„œ ์‚ฌ๋ผ์ง€๊ณ , dfs(1) ๋“ค์–ด๊ฐ€๋ฉด ํ•จ์ˆ˜ ๋์—์„œ dfs(n-1) ๋ผ์ธ์œผ๋กœ ์˜ฌ๋ผ๊ฐ€์„œ ๋‹ค์Œ ๋ผ์ธ์ธ console.log(n) ์ด ์ถœ๋ ฅ๋˜๊ณ  dfs(1) ์‚ญ์ œ, ์ด๊ฒƒ์ด ์Šคํƒ์—์„œ ๋‹ค ์‚ฌ๋ผ์งˆ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต๋œ๋‹ค.

 

๋‹ค๋ฅธ ํŒŒํŠธ๋“ค์€ ๊พธ์—ญ๊พธ์—ญ ์ดํ•ดํ•˜๋ฉด ๋‹ค ์ดํ•ด๊ฐ€ ๋˜์–ด์„œ ๋ฌธ์ œ๋„ ์‰ฝ๋“  ์–ด๋ ต๋“  ์˜ค๋ž˜๊ฑธ๋ฆฌ๋”๋ผ๋„ ํ’€์—ˆ๋Š”๋ฐ ์žฌ๊ท€๋Š” ์‰ฌ์›Œ๋„ ์–ด๋ ค์›Œ๋„ ๋‹ค ํ’€์ง€ ๋ชปํ–ˆ๋‹ค..ใ… ใ… 

 

 

 

 

11/27

๐Ÿ“ ํ•  ์ผ

  • 2์ฐจ ๊ณผ์ œ : movie api 2์ฐจ ์ œ์ถœ ์™„.

 

โœ… ํ•œ ์ผ

  • 2์ฐจ ๊ณผ์ œ : movie api 2์ฐจ ์ œ์ถœ ์™„.

2์ฐจ ๊ณผ์ œ๋ฅผ ์ œ์ถœํ•˜๊ณ  ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›์€ ๋ถ€๋ถ„๊ณผ ๋ฏธ์™„์„ฑ์ด์—ˆ๋˜ ๋ถ€๋ถ„์„ ์ˆ˜์ •ํ–ˆ๋‹ค

ํŠนํžˆ ๋ชจ๋“ˆํ™”๋ฅผ ์–ด๋А์ •๋„ ์„ฑ๊ณตํ•ด์„œ ๋„ˆ๋ฌด ๋ฟŒ๋“ฏํ–ˆ๋‹ค ์‚ฌ์‹ค ์ข€ ๋ฏธ๋ฃจ๋‹ค๊ฐ€ ์˜ค๋Š˜ ๊ฑฐ์˜ ๋‹ค ๊ตฌํ˜„์„ ํ•˜๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๊ฒ ๋‹ค๋Š” ๋งˆ์Œ๋ณด๋‹ค ๋‚ด๊ฐ€ ๋ฆฌํŒฉํ† ๋ง์„ ํ•ด๋‚ด์•ผ ๊ฒ ๋‹ค๋Š” ๋‹ค์ง์ด ๋” ์ปธ๋‹ค

๋ชจ๋“ˆํ™”๋ฅผ ํ•˜๊ธด ํ–ˆ์ง€๋งŒ ์˜ํ™” ๋ชฉ๋ก์„ ๋žœ๋”๋ง ํ•˜๋Š” ๋ถ€๋ถ„์€ ์•„์ง๋„ ์ฝ”๋“œ๊ฐ€ ๋งŽ์ด ๊ธด ๊ฒƒ ๊ฐ™์•„ ์ •๋ฆฌํ•  ํ•„์š”์„ฑ์„ ๋А๋‚€๋‹ค

๊ทธ๋ฆฌ๊ณ  hashchange ๋ฅผ if ๋ฌธ์œผ๋กœ ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค switch ๋ฌธ์œผ๋กœ ์กฐ์ ˆํ•˜๋Š” ๊ฒƒ์ด ๋” ์ง๊ด€์„ฑ์ด ์žˆ๋‹ค๊ณ  ํ”ผ๋“œ๋ฐฑ์„ ํ•ด์ฃผ์…”์„œ ์ˆ˜์ •์„ ํ•˜๊ธด ํ–ˆ๋Š”๋ฐ case ๋ฌธ ์•ˆ์—์„œ if ๋ฌธ์„ ๋งŽ์ด ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋“œ์˜ ํšจ์šฉ์„ฑ์ด ์˜์‹ฌ๋˜๊ธด ํ•œ๋‹ค

์ด๋•Œ localStorage ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฒ€์ƒ‰์–ด๋ฅผ localStorage ์— ์ €์žฅํ•ด ๋’ค๋กœ ๊ฐ€๋ฉด ์ €์žฅํ•œ ๊ฒ€์ƒ‰์–ด๋กœ ๋‚˜์˜ค๋„๋ก ๋ฐ˜์˜ํ•˜๊ณ  ํ–ˆ๋Š”๋ฐ ์–ด์ฐŒ์ €์ฐŒ ์—ฐ๋„ ๋ฐ˜์˜์€ ๋˜์ง€๋งŒ ์•„์ง type value ์™€ page count value ๋ฐ˜์˜์€ ํ•˜์ง€ ๋ชปํ–ˆ๋‹ค ๋˜ ์˜ค๋ฅ˜๋„ ๋„ˆ๋ฌด ๋งŽ์ด ์ƒ๊ฒจ์„œ localStorage  ๋ง๊ณ  ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์œผ๋กœ ์จ๋ณด๊ณ  ์‹ถ์—ˆ๋‹ค

 

 

 

 

+ Recent posts