Home - GitDeveloperKim/DreamEach GitHub Wiki
์ธ์ ๋ชจ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ ๋๊น์ง~
Ground Rule
- ํ ์ฃผ์ 5๊ฐ์ฉ๋ง ํ์!!
- ๋ฌธ์ ํ๊ณ ๊นํ๋ธ ์ ๋ก๋
- ์ด๋ก wiki์ ์ ๋ฆฌ
์ฝ๋ฉ์ ์ฐธ๊ณ ํ๋ฉด ์ข์ ๊ฒ๋ค
๋น ์ค ํ๊ธฐ๋ฒ
- ์ผ๋ฐ์ ์ผ๋ก 1์ต๋ฒ ์ด์ ์ฐ์ฐ์ ์ํํ๋ฉด ์ฃฝ์
- O(NlogN) + O(N) = O(NlogN) // ๋งจ ๋ง์ง๋ง์ ์ ๋ต ์ถ๋ ฅ์ ์ํ ์ต๋, ์ต์, ํฉ๊ณ๋ฅผ ๊ตฌํ๊ธฐ ์ํ for๋ฌธ ํ๋ฒ ๋๋ฆฌ๋ ๊ฒ์ ์๋ฌด ์ํฅ ์์
์๋ฐ ์ด๊ธฐํ
- boolean ๊ฐ์ ์ด๊ธฐ ์ ์ธ ์ false๋ก ์ด๊ธฐํ ๋๋ค
- int[] ๊ฐ์ ์ด๊ธฐ ์ ์ธ ์ 0์ผ๋ก ์ด๊ธฐํ ๋๋ค
BIT ์ฐ์ฐ
- 1<<n : 2^n
- i&(1<<j) : ๊ณ์ฐ ๊ฒฐ๊ณผ๋ i์ j๋ฒ์งธ ๋นํธ๊ฐ 1์ธ์ง ์๋์ง ์๋ฏธํ๋ค
- if ((num & 1) == 0) : ์ง์ ํ์ ํ๋จ, ๋๋จธ์ง ์ฐ์ฐ์๋ณด๋ค ํจ์จ์ด ์ข๋ค
- ๋นํธ ์ฐ์ฐ์ ^๋ฅผ ๋๋ฒ ์ฐ์ฐํ๋ฉด ์ฒ์ ๊ฐ์ ๋ฐํ
์์ฃผ์ฌ์ฉ๋๋ ๋ณ์๋ช (๋ช ๋ช ๊ท์น)
- ์ฝ๋ฉ๋ฌธ์ ํ๋ ์ด๋ฆ์ง๋๋ฐ ์๊ฐ์ ์ค์ด๊ณ ์ ํจ
- start(s) end(e) // ์ธ๊ทธ๋จผํธ ํธ๋ฆฌ ํ์ ๋ฒ์ (ํธ๋ฆฌ ํ๊ณ ๋ค์ด๊ฐ๋ ๋ณ์)
- left(l) right(r) // ์ธ๊ทธ๋จผํธ ํธ๋ฆฌ ์ฐพ๊ณ ์ ํ๋ ๊ตฌ๊ฐ (๊ณ ์ ๋ ๊ฐ)
- from to // ํ์ฌ ์์น, ๋ค์ ์์น
- cur next // ํ์ฌ ๋ ธ๋, ๋ค์ ๋ ธ๋
- u v w // u->v๋ก ๊ฐ๋ ๊ฐ์ค์นw
- answer // ์ ๋ต ์ถ๋ ฅ
- visited[], d[], Arr[], input[], str[] // ์ธํ๊ฐ
- Tree, Node, Point, Edge, Graph // ํด๋์ค ์ด๋ฆ
- adj, mat, topology // ์ธ์ ํ๋ ฌ
- Queue q // ํ
- PriorityQueue pq // priority queue
ํ์ ๋ณํ
- int -> long
- 1000_000_007์ ์๋ฏธ๋ 10์ต์ด ๋๋ ์ต์์ ์์
- ๊ฒฐ๊ตญ ์ฐ์ฐํ ๋ MOD์ฐ์ฐ์ ํด์ฃผ๊ณ ๊ฒฐ๊ณผ๊ฐ๋ MOD๋ฅผ ํด์ฃผ๋๊ฒ ์ข๋ค
- refer
- refer
๊ตฌํ
๊ธธ์ฐพ๊ธฐ ๊ตฌํ ํ
dx = {0, -1, 0, 1} // ๋์๋จ๋ถ
dy = {1, 0, -1, 0}
public static int[] Dx = new int[]{-2, -2, -1, -1, 1, 1, 2, 2}; // ์ฒด์ค ๋ง
public static int[] Dy = new int[]{1, -1, 2, -2, 2, -2, 1, -1};
x,y = 2,2 // ํ์ฌ ์์น
nx = x + dx[i]
ny = y + dy[i]
arr[ny][nx] // ๋ฐ๋๋ก ๋ฃ์ด์ผ x,y ์๋ฏธ // arr [y][x] == arr[ํ][์ด]
์ปดํจํฐ ์ฌ์ด์ธ์ค ์ด๋ก
- ๋ฐ๋จธ์ ํผํฌ ์ด๋ก ์ด๋, ํ๋ก๊ทธ๋๋จธ์ ํ์ค ์์ฝ ๋๋๊ฐ 0.129%~0.138% ์ฌ์ด์ผ ๋ ์ด์ธ์ ์ธ ์ฝ๋ฉ ์ค๋ ฅ์ ๋ฐํํ๋ค๋ ์ด๋ก ์ด๋ค. ์ ๋จน๊ณ ์ฝ๋ฉํ๋ฉด ์ํ๋ฆฌ๋...? click
- 12ํผํธ ๊ธธ์ด์ ์๋๋ฐญ์ ์ธํ๋ฆฌ๋ฅผ ๊ธธ๊ฒ ์ธ์ฐ๋ ค ํ๋๋ฐ ๊ธฐ๋ฅ ์ฌ์ด์ ์ธํ๋ฆฌ ๋ฒฝ ๋ถ๋ถ์ ํญ์ด 3ํผํธ ๊ธธ์ด๋ผ๋ฉด ์ธํ๋ฆฌ ๊ธฐ๋ฅ์ด ๋ช๊ฐ ํ์ํ๊ฐ? 5๊ฐ๊ฐ ํ์ํ๋ค : ์ธํ๋ฆฌ ๊ธฐ๋ฅ(fencepost) ์๋ฌ,,, ๊ฐ๋ฐ์๋ ์ซ์๋ฅผ ์ ๋ชป์ผ๋ค...
- ์ง์์ ์ ์ฃผ ๋ค์ด๋ฒ์ฌ์