42747. H-Index
์ฝ๋ฉํ ์คํธ ์ฐ์ต - H-Index
| ๋ฌธ์ ์ ํ | ๋์ด๋ | ๊ฑธ๋ฆฐ ์๊ฐ | ํด๊ฒฐ ์ ๋ฌด(โ /โ) |
|---|---|---|---|
| ์ ๋ ฌ | lv.2 | 20๋ถ | โ |
์ค๊ณ ๋ฐฉ๋ฒ#
citations๋ฐฐ์ด์ ์ ๋ ฌํ๋ค.reduceํจ์๋กcitations๋ฐฐ์ด์ ์ํํ๋ฉฐh๋ฅผ ์ต๋๊ฐn (citations.length)๋ถํฐ ์์ํด์ ํ์ฌ ๋ ผ๋ฌธ์ ์ธ์ฉ ํ์๊ฐh๋ฒ ์ด์์ด๋ผ๋ฉดh๋ฅผ ๋ฐํํ๊ณ ,- ์ด ๋
reduceํจ์์ early break๋ฅผ ์ํดarr๋ฅผspliceํ๋ค.
- ์ด ๋
h๋ฒ ๋ฏธ๋ง์ด๋ผ๋ฉดh๋ฅผ ๊ฐ์์ํจ๋ค.
์ฝ๋#
function solution(citations) { return citations .sort((a, b) => a - b) .slice() .reduce((h, cur, _, arr) => { if (cur >= h) { arr.splice(1); return h; } return --h; }, citations.length);}์๊ฐ ๋ณต์ก๋#
์ ๋ ฌ : O(NlogN)
์ํ : O(N)
โ O(NlogN)
์ด๋ ค์ ๋ ์ #
์ฒ์์ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์ฝ๊ฒ ๋ ์ฌ๋๊ณ , ์ ์คํ์ง๋ง, ๋ฐฉ๋ฒ์ด ๋ ์ค๋ฅด์ง ์์๋ค๋ฉด ํค๋งธ์ ๊ฒ ๊ฐ๋ค.
๋จํญ ์ฆ๊ฐ ์ฐ์ฐ์์์
--x๋๋++x๋ ํผ์ฐ์ฐ์์ ์ฐ์ฐ์ ์ ์ฉํ ๊ฐ์ ๋ฐํํ์ง๋ง,x--๋๋x++๋ ํผ์ฐ์ฐ์์ ์ฐ์ฐ์ ์ ์ฉํ๊ธฐ ์ ๊ฐ์ ๋ฐํํ๋ค๋ ๊ฒ๋์๋ก ์๊ฒ ๋์๋ค. (๊ทธ๋ฅ ๋จผ์ ์ ์ฉํ๋ค, ๋์ค์ ์ ์ฉํ๋ค ๋ก๋ง ์ดํดํ์์)