์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- heapq
- ํ๋ก ํธ์๋
- ํ์ด์ฌ
- node.js
- Til
- ๋๋ฆผ์ฝ๋ฉ
- ๋ฐฑ์ค
- ์๊ณ ๋ฆฌ์ฆ
- ํ๋ก์ ํธ
- error
- javascript
- HTML
- ํฌ๋กค๋ง
- KDT
- JS
- ์ฝ๋ฉํ ์คํธ
- ๊ทธ๋ฆฌ๋
- CSS
- ๊ฐ๋ฐ
- ์ฝ๋ฉ์ ํ
- react
- fe
- ํ๋ก๊ทธ๋๋จธ์ค
- ๊ตญ๋น์ง์
- ๋ ธ๋ง๋์ฝ๋
- ๋ชจ๊ฐ์ฝ
- Python
- mongodb
- ์ฝ๋ฉ
- ํ ์ดํ๋ก์ ํธ
- Today
- Total
๋ชฉ๋ก์ฝ๋ฉํ ์คํธ (34)
๐ฑ → ๐ณ

ํ์ ์๊ณ ๋ฆฌ์ฆ ์์ฐจ ํ์: ๋ฆฌ์คํธ ์์ ์๋ ํน์ ํ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๊ธฐ ์ํด ์์์๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ํ๋์ฉ ํ์ธํ๋ ๋ฐฉ๋ฒ ์ด์ง ํ์: ์ ๋ ฌ๋์ด ์๋ ๋ฆฌ์คํธ์์ ํ์ ๋ฒ์๋ฅผ ์ ๋ฐ์ฉ ์ขํ๊ฐ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ํ์ํ๋ ๋ฐฉ๋ฒ ์ด์ง ํ์์ ์์์ , ๋์ , ์ค๊ฐ์ ์ ์ด์ฉํ์ฌ ํ์ ๋ฒ์๋ฅผ ์ค์ ํจ ์ด์ง ํ์ ๋์ ์์ ์ด์ง ํ์์ ์๊ฐ ๋ณต์ก๋ ๋จ๊ณ๋ง๋ค ํ์ ๋ฒ์๋ฅผ 2๋ก ๋๋๋ ๊ฒ๊ณผ ๋์ผํ๋ฏ๋ก ์ฐ์ฐ ํ์๋ $log_2N$ ์ ๋น๋กํจ ์๋ฅผ ๋ค์ด ์ด๊ธฐ ๋ฐ์ดํฐ ๊ฐ์๊ฐ 32๊ฐ์ผ ๋, ์ด์์ ์ผ๋ก 1๋จ๊ณ๋ฅผ ๊ฑฐ์น๋ฉด 16๊ฐ๊ฐ๋์ ๋ฐ์ดํฐ๋ง ๋จ์ 2๋จ๊ณ๋ฅผ ๊ฑฐ์น๋ฉด 8๊ฐ๊ฐ๋์ ๋ฐ์ดํฐ๋ง ๋จ์ 3๋จ๊ณ๋ฅผ ๊ฑฐ์น๋ฉด 4๊ฐ๊ฐ๋์ ๋ฐ์ดํฐ๋ง ๋จ์ ๋ค์ ๋งํด ์ด์ง ํ์์ ํ์ ๋ฒ์๋ฅผ ์ ๋ฐ์ฉ ์ค์ด๋ฉฐ, ์๊ฐ ๋ณต์ก๋๋ $O(logN)$์ ๋ณด์ฅํจ ํ์ด์ฌ ์ด์ง ํ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ bis..
๊ทธ๋ํ ํ์ ์๊ณ ๋ฆฌ์ฆ: DFS/BFS ํ์(search)์ด๋ ๋ง์ ์์ ๋ฐ์ดํฐ ์ค์์ ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๋ ๊ณผ์ ๋ํ์ ์ธ ๊ทธ๋ํ ํ์ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก DFS/BFS๊ฐ ์กด์ฌ ์๋ฃ๊ตฌ์กฐ ์คํ(์ ์ ํ์ถ) ๋จผ์ ๋ค์ด ์จ ๋ฐ์ดํฐ๊ฐ ๋์ค์ ๋๊ฐ๋ ํ์์ ์๋ฃ๊ตฌ์กฐ ์์) ๋ฐ์ค ์๊ธฐ DFS method ์ ์ def dfs(graph, v, visited): visited[v] = True print(v, end=' ') for i in graph[v]: if not visited[i]: dfs(graph, i, visited) graph = [ [], [2,3,8], [1,7], [1,4,5], [3,5], [3,4], [7], [2,6,8], [1,7] ] visited = [False] * 9 dfs(graph, 1, ..
์์ 1) 1์ด ๋ ๋ ๊น์ง while True: # (N==K๋ก ๋๋์ด๋จ์ด์ง๋ ์)๊ฐ ๋ ๋๊น์ง 1์ฉ ๋นผ๊ธฐ target = (n//k)*k count += (n-target) n = target if n
์๊ตฌ์ฌํญ์ ๋ฐ๋ผ ์ ์ ํ ์๊ณ ๋ฆฌ์ฆ ์ค๊ณํ๊ธฐ ๋ฌธ์ ์์ ๊ฐ์ฅ ๋จผ์ ํ์ธํด์ผ ํ๋ ๋ด์ฉ์ ์๊ฐ์ ํ(์ํ์๊ฐ ์๊ตฌ์ฌํญ) ์๊ฐ์ ํ์ด 1์ด์ธ ๋ฌธ์ ๋ฅผ ๋ง๋ฌ์ ๋, ์ผ๋ฐ์ ์ธ ๊ธฐ์ค N์ ๋ฒ์๊ฐ 500์ธ ๊ฒฝ์ฐ: ์๊ฐ ๋ณต์ก๋๊ฐ O(N^3)์ธ ์๊ณ ๋ฆฌ์ฆ์ ์ค๊ณ N์ ๋ฒ์๊ฐ 2,000์ธ ๊ฒฝ์ฐ: ์๊ฐ ๋ณต์ก๋๊ฐ O(N^2)์ธ ์๊ณ ๋ฆฌ์ฆ์ ์ค๊ณ N์ ๋ฒ์๊ฐ 100,000์ธ ๊ฒฝ์ฐ: ์๊ฐ ๋ณต์ก๋๊ฐ O(NlogN)์ธ ์๊ณ ๋ฆฌ์ฆ์ ์ค๊ณ N์ ๋ฒ์๊ฐ 10,000,000์ธ ๊ฒฝ์ฐ: ์๊ฐ ๋ณต์ก๋๊ฐ O(N)์ธ ์๊ณ ๋ฆฌ์ฆ์ ์ค๊ณ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํด๊ฒฐ ๊ณผ์ (์ผ๋ฐ์ ์ผ๋ก) 1. ์ง๋ฌธ ์ฝ๊ธฐ ๋ฐ ์ปดํจํ ์ ์ฌ๊ณ 2. ์๊ตฌ์ฌํญ(๋ณต์ก๋) ๋ถ์ 3. ๋ฌธ์ ํด๊ฒฐ์ ์ํ ์์ด๋์ด ์ฐพ๊ธฐ 4. ์์ค์ฝ๋ ์ค๊ณ ๋ฐ ์ฝ๋ฉ ์ผ๋ฐ์ ์ผ๋ก ๋๋ถ๋ถ์ ๋ฌธ์ ์ถ์ ์๋ค์ ํต์ฌ ์์ด๋์ด๋ฅผ ์บ์นํ..

https://www.acmicpc.net/problem/18870 18870๋ฒ: ์ขํ ์์ถ ์์ง์ ์์ N๊ฐ์ ์ขํ X1, X2, ..., XN์ด ์๋ค. ์ด ์ขํ์ ์ขํ ์์ถ์ ์ ์ฉํ๋ ค๊ณ ํ๋ค. Xi๋ฅผ ์ขํ ์์ถํ ๊ฒฐ๊ณผ X'i์ ๊ฐ์ Xi > Xj๋ฅผ ๋ง์กฑํ๋ ์๋ก ๋ค๋ฅธ ์ขํ์ ๊ฐ์์ ๊ฐ์์ผ ํ๋ค. X1, X2, ..., XN์ ์ข www.acmicpc.net ๐ ๋ฌธ์ ํด์ค "Xi>Xj๋ฅผ ๋ง์กฑํ๋ ์๋ก ๋ค๋ฅธ ์ขํ์ ๊ฐ์์ ๊ฐ์์ผ๋๋ค" ๋ผ๋ ๋ป์ ์ฆ Xi๊ฐ ๋ฆฌ์คํธ ์์์์ ํฌ๊ธฐ ์์๋ฅผ ์ถ๋ ฅํ๋ฉด ๋๋ค๋ ๋ง (ํฌ๊ธฐ ์์๋ 0๋ถํฐ ์์.) ์ฆ, ๋ฆฌ์คํธ์์์ ์๊ธฐ๋ณด๋ค ์์ ์ซ์์ ๊ฐ์๋ฅผ ์ธ๋ ๊ฒ์ด๋ฏ๋ก, ์์ ์ด ๋ฆฌ์คํธ ์์์์ ํฌ๊ธฐ ์์๋ฅผ ์ถ๋ ฅํ๋ฉด ๋จ ๐ ์ฝ๋ ์คํจ ์ฝ๋ (์๊ฐ ์ด๊ณผ) n = int(input())..
https://www.acmicpc.net/problem/9020 9020๋ฒ: ๊ณจ๋๋ฐํ์ ์ถ์ธก 1๋ณด๋ค ํฐ ์์ฐ์ ์ค์์ 1๊ณผ ์๊ธฐ ์์ ์ ์ ์ธํ ์ฝ์๊ฐ ์๋ ์์ฐ์๋ฅผ ์์๋ผ๊ณ ํ๋ค. ์๋ฅผ ๋ค์ด, 5๋ 1๊ณผ 5๋ฅผ ์ ์ธํ ์ฝ์๊ฐ ์๊ธฐ ๋๋ฌธ์ ์์์ด๋ค. ํ์ง๋ง, 6์ 6 = 2 × 3 ์ด๊ธฐ ๋๋ฌธ์ ์์๊ฐ ์ www.acmicpc.net ์ ๋ต ์ฝ๋: def is_prime(n): if n == 1: return False for j in range(2, int(n**0.5)+1): if n % j == 0: return False return True t = int(input()) for i in range(t): num = int(input()) a,b = num//2, num//2 while a > 0: i..
https://www.acmicpc.net/problem/4948 4948๋ฒ: ๋ฒ ๋ฅดํธ๋ ๊ณต์ค ๋ฒ ๋ฅดํธ๋ ๊ณต์ค์ ์์์ ์์ฐ์ n์ ๋ํ์ฌ, n๋ณด๋ค ํฌ๊ณ , 2n๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์๋ ์ ์ด๋ ํ๋ ์กด์ฌํ๋ค๋ ๋ด์ฉ์ ๋ด๊ณ ์๋ค. ์ด ๋ช ์ ๋ ์กฐ์ ํ ๋ฒ ๋ฅดํธ๋์ด 1845๋ ์ ์ถ์ธกํ๊ณ , ํํ๋ํฐ ์ฒด๋น์ผ www.acmicpc.net ์ฒ์ ์ฝ๋: while(1): a=int(input()) if a ==0: break cnt=0 for i in range(a+1,2*a+1): if i == 1: continue for j in range(2,int(i**0.5)+1): if i % j == 0: break else: cnt+=1 print(cnt) ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ง๋ค ๊ณ์ ์์๋ฅผ ๊ณ์ฐํ๋๊น ์๊ฐ ์ด๊ณผ ๋ฐ์ ์ ๋ต ์ฝ๋:..
https://www.acmicpc.net/problem/1929 1929๋ฒ: ์์ ๊ตฌํ๊ธฐ ์ฒซ์งธ ์ค์ ์์ฐ์ M๊ณผ N์ด ๋น ์นธ์ ์ฌ์ด์ ๋๊ณ ์ฃผ์ด์ง๋ค. (1 ≤ M ≤ N ≤ 1,000,000) M์ด์ N์ดํ์ ์์๊ฐ ํ๋ ์ด์ ์๋ ์ ๋ ฅ๋ง ์ฃผ์ด์ง๋ค. www.acmicpc.net ์ฒ์ ์์ฑํ ์ฝ๋: a,b= map(int, input().split()) for i in range(a,b+1): cnt = 0 if i > 1: for j in range(2,i): if i % j == 0: cnt += 1 if cnt == 0: print(i) ๋ต์ ๋์ค์ง๋ง ์๊ฐ ์ด๊ณผ ๋ฐ์ ์์๋ ์์ ๊ณผ 1๋ฐ์ ์ฝ์๊ฐ ์๋ ์์ด๋ค. ๊ทธ๋ผ ๋ชจ๋ ์๋ฅผ ๋๋ฉด์ ๋๋์ด ๋จ์ด์ง๋ ์๊ฐ ์๋์ง ์๋์ง ๋ณด๋ฉด ๋๋๋ฐ ๋ชจ๋ ์๋ฅผ ๋ด์ผํ ..