๋ถ๋ถํฉ
-
- [BOJ-2559][C++] ์์ด
๋ฌธ์ ๋งค์ผ ์์นจ 9์์ ํ๊ต์์ ์ธก์ ํ ์จ๋๊ฐ ์ด๋ค ์ ์์ ์์ด๋ก ์ฃผ์ด์ก์ ๋, ์ฐ์์ ์ธ ๋ฉฐ์น ๋์์ ์จ๋์ ํฉ์ด ๊ฐ์ฅ ํฐ ๊ฐ์ ์์๋ณด๊ณ ์ ํ๋ค. ์๋ฅผ ๋ค์ด, ์๋์ ๊ฐ์ด 10์ผ ๊ฐ์ ์จ๋๊ฐ ์ฃผ์ด์ก์ ๋, 3 -2 -4 -9 0 3 7 13 8 -3 ๋ชจ๋ ์ฐ์์ ์ธ ์ดํ๊ฐ์ ์จ๋์ ํฉ์ ์๋์ ๊ฐ๋ค. ์ด๋, ์จ๋์ ํฉ์ด ๊ฐ์ฅ ํฐ ๊ฐ์ 21์ด๋ค. ๋ ๋ค๋ฅธ ์๋ก ์์ ๊ฐ์ ์จ๋๊ฐ ์ฃผ์ด์ก์ ๋, ๋ชจ๋ ์ฐ์์ ์ธ 5์ผ ๊ฐ์ ์จ๋์ ํฉ์ ์๋์ ๊ฐ์ผ๋ฉฐ, ์ด๋, ์จ๋์ ํฉ์ด ๊ฐ์ฅ ํฐ ๊ฐ์ 31์ด๋ค. ๋งค์ผ ์ธก์ ํ ์จ๋๊ฐ ์ ์์ ์์ด๋ก ์ฃผ์ด์ก์ ๋, ์ฐ์์ ์ธ ๋ฉฐ์น ๋์์ ์จ๋์ ํฉ์ด ๊ฐ์ฅ ํฐ ๊ฐ์ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์๋ ๋ ๊ฐ์ ์ ์ N๊ณผ K๊ฐ ํ ๊ฐ์ ๊ณต๋ฐฑ์ ์ฌ์ด์ ๋๊ณ ์์๋๋ก ์ฃผ์ด์ง๋ค. ์ฒซ..
2022.10.26 -
- [BOJ-11659] ๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ 4
๋ฌธ์ ์ N๊ฐ๊ฐ ์ฃผ์ด์ก์ ๋, i๋ฒ์งธ ์๋ถํฐ j๋ฒ์งธ ์๊น์ง ํฉ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ์์ ๊ฐ์ N๊ณผ ํฉ์ ๊ตฌํด์ผ ํ๋ ํ์ M์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ N๊ฐ์ ์๊ฐ ์ฃผ์ด์ง๋ค. ์๋ 1,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ์ ์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์๋ ํฉ์ ๊ตฌํด์ผ ํ๋ ๊ตฌ๊ฐ i์ j๊ฐ ์ฃผ์ด์ง๋ค. ์ถ๋ ฅ ์ด M๊ฐ์ ์ค์ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง i๋ฒ์งธ ์๋ถํฐ j๋ฒ์งธ ์๊น์ง ํฉ์ ์ถ๋ ฅํ๋ค. ์ ํ 1 ≤ N ≤ 100,000 1 ≤ M ≤ 100,000 1 ≤ i ≤ j ≤ N ์์ ์ ๋ ฅ 1 5 3 5 4 3 2 1 1 3 2 4 5 5 ์์ ์ถ๋ ฅ 1 12 9 1 ๋ฌธ์ ์ถ์ฒ https://www.acmicpc.net/problem/11659 11659๋ฒ: ๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ 4 ์ฒซ์งธ ์ค์ ์์ ๊ฐ์ N..
2022.10.26 -
- [Algorithm] ์ค์บ๋ ๋ฉ์๋(Scanning Method)
์ค์บ๋ ๋ฉ์๋(Scanning Method) ์ผ๋ ฌ๋ก ๋์ด๋ ๋ฐ์ดํฐ๊ฐ ์ฃผ์ด์ง ๋, ๋ฌธ์ ์์ ์๊ตฌํ๋ ์ด๋ค ํน์ ๊ตฌ๊ฐ๊ณผ ๊ทธ ๊ตฌ๊ฐ์ ๊ธธ์ด๋ฅผ ๊ตฌํ๊ณ ์ ํ ๋๊ฐ ์๋ค. ์ ์๋์ ๊ฐ์ด ๋ฐฐ์ด a์ 0 ๋๋ 1์ ๋ฐ์ดํฐ๊ฐ ์ฃผ์ด์ง ๋, ์ฐ์์ ์ผ๋ก 1์ด ๋ฐ์๋๋ ์ต๋ ๊ตฌ๊ฐ์ ๊ธธ์ด์ ๊ทธ ๋์ ์์น๋ฅผ ๊ตฌํ๋ผ. X 1 0 1 1 0 1 1 1 1 0 a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10] ๊ตฌ๊ฐ [1, 1]์๋ ์ฐ์๋ 1์ด 1๊ฐ ๋ฐ์๋์๊ณ , ๊ตฌ๊ฐ [3, 4]์๋ ์ฐ์๋ 1์ด 2๊ฐ ๋ฐ์๋์์ผ๋ฉฐ ๊ตฌ๊ฐ [6, 9]์๋ ์ฐ์๋ 1์ด 4๊ฐ ๋ฐ์๋์๋ค. ์ฌ๊ธฐ์ ์ฐ์์ ์ผ๋ก 1์ด ๋ฐ์๋๋ ์ต๋ ๊ตฌ๊ฐ์ [6, 9]์ด๊ณ , ๊ตฌ๊ฐ์ ๊ธธ์ด๋ 4๊ฐ ๋๋ค. 3์ค for ๋ฌธ์ ์ด์ฉํ์ฌ ๊ตฌํ๊ธฐ ๋ค..
2022.10.26 -
- [Algorithm] ๋ถ๋ถํฉ(Partial Sum) ; ๋์ ํฉ(Prefix Sum)
๋ถ๋ถํฉ(Partial Sum) ; ๋์ ํฉ(Prefix Sum) ์ฐ์๋ ๊ตฌ๊ฐ $start$ ๋ถํฐ $end$ ๊น์ง์ ํฉ ๊ตฌํ๊ธฐ ์ผ์ฐจ์ ๋ฐฐ์ด a๊ฐ ์๋์ ๊ฐ์ด ์ด๊ธฐํ๋์ด ์๋ค. X 10 20 30 40 50 60 70 80 90 100 a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10] ๋ฐฐ์ด a์์ ์ฐ์๋ ๊ตฌ๊ฐ $start$ ๋ถํฐ $end$ ๊น์ง์ ํฉ์ $\displaystyle \sum_{k=\text{start}}^{\text{end}} a[k] = a[start] + a[start + 1] + \cdots + a[end -1] + a[end]$ ๋ก ์ ์ํ๋ค๋ฉด ($start ≤ end$), ๊ตฌ๊ฐ 5๋ถํฐ ๊ตฌ๊ฐ 9๊น์ง์ ํฉ $\displaystyle \sum_{..
2022.10.26