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++
๋ ํผ์ฐ์ฐ์์ ์ฐ์ฐ์ ์ ์ฉํ๊ธฐ ์ ๊ฐ์ ๋ฐํํ๋ค๋ ๊ฒ๋์๋ก ์๊ฒ ๋์๋ค. (๊ทธ๋ฅ ๋จผ์ ์ ์ฉํ๋ค, ๋์ค์ ์ ์ฉํ๋ค ๋ก๋ง ์ดํดํ์์)