์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- node.js
- ํ ์ดํ๋ก์ ํธ
- ์ฝ๋ฉ์ ํ
- JS
- ๋ ธ๋ง๋์ฝ๋
- mongodb
- HTML
- ํฌ๋กค๋ง
- ๋๋ฆผ์ฝ๋ฉ
- Til
- Python
- ์๊ณ ๋ฆฌ์ฆ
- ํ๋ก์ ํธ
- ์ฝ๋ฉ
- javascript
- ๊ทธ๋ฆฌ๋
- ๊ตญ๋น์ง์
- ํ์ด์ฌ
- ํ๋ก๊ทธ๋๋จธ์ค
- ๊ฐ๋ฐ
- ์ฝ๋ฉํ ์คํธ
- heapq
- fe
- KDT
- ํ๋ก ํธ์๋
- CSS
- error
- ๋ชจ๊ฐ์ฝ
- react
- ๋ฐฑ์ค
- Today
- Total
๋ชฉ๋กAlgorithms (80)
๐ฑ → ๐ณ
https://school.programmers.co.kr/learn/courses/30/lessons/12953 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ์ฌ์ ์ง์ python์์ ์ต๋๊ณต์ฝ์, ์ต์๊ณต๋ฐฐ์ ๊ตฌํ๋ ๋ฐฉ๋ฒ - a,b์ ์ต๋๊ณต์ฝ์ : math.gcd(a,b) - a,b์ ์ต์๊ณต๋ฐฐ์ : a*b/math.gcd(a,b) ์ฝ๋ ๋ด ์ฝ๋(์ ๋ต) from math import gcd def solution(arr): stack = [] for i in arr: if not stack: stack.append(i) else: a = stack.pop..
์ฝ๋ ์ฒ์ ์ฝ๋ def solution(n, lost, reserve): lst = sorted(lost) reserve.sort() for i in lst1: if i-1 in reserve: reserve.remove(i-1) lost.remove(i) elif i in reserve: reserve.remove(i) lost.remove(i) elif i+1 in reserve: reserve.remove(i+1) lost.remove(i) return n-len(lost) ์ . .! ๊ฐ์ฌํฉ๋๋ค. .. . ๋ค์ ๋์ def solution(n, lost, reserve): lst = sorted(lost) reserve.sort() for i in lst: if i in reserve: reser..
์ฝ๋ ์๊ฐ์ด๊ณผ ์ฝ๋ from collections import deque def solution(scoville, K): answer = 0 scoville = deque(scoville) while True: scoville = deque(sorted(scoville)) if scoville[0] >= K: break v1 = scoville.popleft() v2 = scoville.popleft() scoville.append(v1+(v2*2)) answer += 1 return answer ์ฌ์ง์ด ๋ช๋ชํ ์คํธ ๋ฐํ์์๋ฌ๋ ๋ฐ์ deque ์ฌ์ฉํด์ ์๋ก์ด ์ค์ฝ๋น์ง์ ๋ค์ด์ฌ ๋ ๋ง๋ค ์ ๋ ฌํด์ค ๋ด๊ฐ ๋ด๋ ๊ตฌ๋ฆฐ ์ฝ๋ .. ์๊ฐ์ด๊ณผ ํด๊ฒฐ ์ฝ๋ from heapq import heapify, heappush,..
https://school.programmers.co.kr/learn/courses/30/lessons/42586 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ๋ฌธ์ ์ ๋ณด ๋ฌธ์ ์ ํ : stack/queue ์ค๊ณ ๋ฐฉ๋ฒ ์์ ์๊ฐ์ ๋ฏธ๋ฆฌ ๊ณ์ฐํด๋๊ณ q์ ์ ์ฅ (q๋ deque) q.popleftํด์ ์์ ์๋ ๊ธฐ๋ฅ์ด ๋ฐฐํฌ๋ ๋ ํจ๊ป ๋ฐฐํฌ๋ ์ ์๋ ๋ท ๊ธฐ๋ฅ ์ ์ฅ ์ฝ๋ ์คํจ ์ฝ๋ from collections import deque def solution(progresses, speeds): answer = [] cnt = 1 q = deque() for i..
https://school.programmers.co.kr/learn/courses/30/lessons/42576 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ์ค๊ณ ๋ฐฉ๋ฒ completion ๋๋ฉด์ participant์ i๊ฐ ์์ผ๋ฉด completion ๋ฐฐ์ด์์ i ์ง์์ฃผ๊ณ , ๋ง์ง๋ง ๋จ์ participant๋ฅผ ๋ฐํํด์ฃผ๋ฉด ๋๋ค๊ณ ์๊ฐํ์ ๊ทผ๋ฐ ์ด๋ ๊ฒ ํ๋ฉด ์๊ฐ๋ณต์ก๋๊ฐ O(n^2) ์ด๊ธฐ ๋๋ฌธ์ ์๊ฐ์ด๊ณผ๋ฐ์ ๋ฌธ๋ python ๋ด์ฅ sort() ํจ์๊ฐ O(nlogN)์ธ ๊ฒ ๊ธฐ์ต๋ฌ์ ๋ด์ฅํจ์ ์ฌ์ฉํด์ ์ ๋ ฌํ ๋ค, ์์๋๋ก ๋นผ๋ฉด ๋๊ฒ ๊ตฌ๋ ์๊ฐํจ ์ฝ๋ ์๊ฐ์ด๊ณผ de..
๋ฌธ์ ์ ๋ณด ๋ฌธ์ ์ ํ ๋์ด๋ ๊ฑธ๋ฆฐ ์๊ฐ ํด๊ฒฐ ์ ๋ฌด ์ค์ค๋ก ๊ตฌํ ์ฑ๊ณต DFS/BFS level2 33m O O ์ค๊ณ ๋ฐฉ๋ฒ numbers ๋๋ฉด์ arr ๋ชจ๋ ์์์ ๋ํด -num๊ณผ +num์ ํด์ค arr ๋ชจ๋ ์์๋ฅผ ๋ ๋๋ arr.popleft()๋ก ํ๋์ฉ ๋นผ์ ์ฌ์ฉ -num๊ณผ +num์ ํด์ค ์์๋ arr.append() numbers ๋ค ๋์์ผ๋ฉด ๋ง์ง๋ง arr์ ์๋ ์์ ์ค target๊ณผ ์ผ์นํ๋ ์์ ์นด์ดํ ์ฝ๋ ๋ด ํ์ด from collections import deque def solution(numbers, target): arr = deque([0]) for num in numbers: for _ in range(len(arr)): v = arr.popleft() arr.append(v - ..
https://school.programmers.co.kr/learn/courses/30/lessons/12951 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ๋ช๋ช ํ ์คํธ์์ ๋ฐํ์์๋ฌ ๋ฐ์ ์ด์ ๊ฐ ๋ญ๊น ? def solution(s): answer = '' ans = [] arr = (s.split(' ')) for s in arr: for i in s: ans.append(i.lower()) ans[0] = ans[0].upper() answer += ''.join(ans) answer += ' ' ans = [] return answer[:-1] ..
ํ์ ํน์ ํ ๊ท์น์ ๊ฐ์ง๋ ํธ๋ฆฌ๋ก, ์ต๋๊ฐ๊ณผ ์ต์๊ฐ์ ์ฐพ๋ ์ฐ์ฐ์ ๋น ๋ฅด๊ฒ ํ๊ธฐ ์ํด ๊ณ ์๋ ์์ ์ด์งํธ๋ฆฌ๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ํ๋ค. ํ property : A๊ฐ B์ ๋ถ๋ชจ๋ ธ๋์ด๋ฉด A์ ํค๊ฐ๊ณผ B์ ํค๊ฐ ์ฌ์ด์๋ ๋์ ๊ด๊ณ๊ฐ ์ฑ๋ฆฝํ๋ค ์ต์ ํ: ๋ถ๋ชจ ๋ ธ๋์ ํค๊ฐ์ด ์์ ๋ ธ๋์ ํค๊ฐ๋ณด๋ค ํญ์ ์์ ํ ์ต๋ ํ: ๋ถ๋ชจ ๋ ธ๋์ ํค๊ฐ์ด ์์ ๋ ธ๋์ ํค๊ฐ๋ณด๋ค ํญ์ ํฐ ํ ์ด๋ฌํ ์์ฑ์ผ๋ก ์ธํด ํ์์๋ ๊ฐ์ฅ ๋ฎ์(ํน์ ๋์) ์ฐ์ ์์๋ฅผ ๊ฐ์ง๋ ๋ ธ๋๊ฐ ํญ์ ๋ฃจํธ์ ์ค๊ฒ ๋๊ณ ์ด๋ฅผ ์ด์ฉํด ์ฐ์ ์์ ํ์ ๊ฐ์ ์ถ์์ ์๋ฃํ์ ๊ตฌํํ ์ ์๋ค. ์ด๋ ํค๊ฐ์ ๋์ ๊ด๊ณ๋ ๋ถ๋ชจ/์์ ๊ฐ์๋ง ์ฑ๋ฆฝํ๊ณ , ํ์ ๋ ธ๋ ์ฌ์ด์๋ ๋์ ๊ด๊ณ๊ฐ ์ ํด์ง์ง ์๋๋ค. ํ์ด์ฌ ํ ์๋ฃ๊ตฌ์กฐ ํ์ด์ฌ heapq ๋ชจ๋์ heapq (priority queue) ์๊ณ ..