greedy algorithm
-
- [BOJ-2720][C++] ์ธํ์ ์ฌ์ฅ ๋ํ๋ฌธ์ ๋ฏธ๊ตญ์ผ๋ก ์ ํ๊ฐ ๋ํ์ด๋ ์ธํ์๋ฅผ ์ด์ํ๊ณ ์๋ค. ๋ํ์ด๋ ์ต๊ทผ์ ์๋ฅด๋ฐ์ดํธ๋ก ๊ณ ๋ฑํ์ ๋ฆฌ์์ ์ฑ์ฉํ๋ค. ๋ํ์ด๋ ๋ฆฌ์์๊ฒ ์ค๋งํ๋ค. ๋ฆฌ์์ ๊ฑฐ์ค๋ฆ๋์ ์ฃผ๋ ๊ฒ์ ์๊พธ ์ค์ํ๋ค. ์ฌ์ง์ด $0.5๋ฌ๋ฌ๋ฅผ ์ค์ผํ๋ ๊ฒฝ์ฐ์ ๊ฑฐ์ค๋ฆ๋์ผ๋ก $5๋ฌ๋ฌ๋ฅผ ์ฃผ๋๊ฒ์ด๋ค! ์ด์ฉ์ ์์ด ๋ฐ์ด๋ ์ฝ๋ฉ ์ค๋ ฅ์ ๋ฐํํด ๋ฆฌ์์ ๋์์ฃผ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ ค๊ณ ํ์ง๋ง, ๋์๋ธ๋ก๋ฅผ ํ๋๋ผ ์ฝ๋ฉํ ์๊ฐ์ด ์์ด์ ์ด ๋ฌธ์ ๋ฅผ ์ฝ๊ณ ์๋ ์ฌ๋ฌ๋ถ์ด ๋์ ํด์ฃผ์ด์ผ ํ๋ค. ๊ฑฐ์ค๋ฆ๋์ ์ก์๊ฐ ์ฃผ์ด์ง๋ฉด ๋ฆฌ์์ด ์ค์ผํ ์ฟผํฐ(Quarter, $0.25)์ ๊ฐ์, ๋ค์(Dime, $0.10)์ ๊ฐ์, ๋์ผ(Nickel, $0.05)์ ๊ฐ์, ํ๋(Penny, $0.01)์ ๊ฐ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๊ฑฐ์ค๋ฆ๋์ ํญ์ $5.00 ์ดํ์ด๊ณ , ์๋์ด ..
2023.06.18 -
- [BOJ-1541][C++] ์์ด๋ฒ๋ฆฐ ๊ดํธ๋ฌธ์ ์ธ์ค์ด๋ ์์์ +, -, ๊ทธ๋ฆฌ๊ณ ๊ดํธ๋ฅผ ๊ฐ์ง๊ณ ์์ ๋ง๋ค์๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ ์ธ์ค์ด๋ ๊ดํธ๋ฅผ ๋ชจ๋ ์ง์ ๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ ์ธ์ค์ด๋ ๊ดํธ๋ฅผ ์ ์ ํ ์ณ์ ์ด ์์ ๊ฐ์ ์ต์๋ก ๋ง๋ค๋ ค๊ณ ํ๋ค. ๊ดํธ๋ฅผ ์ ์ ํ ์ณ์ ์ด ์์ ๊ฐ์ ์ต์๋ก ๋ง๋๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ์์ด ์ฃผ์ด์ง๋ค. ์์ ‘0’~‘9’, ‘+’, ๊ทธ๋ฆฌ๊ณ ‘-’๋ง์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ๊ฐ์ฅ ์ฒ์๊ณผ ๋ง์ง๋ง ๋ฌธ์๋ ์ซ์์ด๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ์ํด์ ๋ ๊ฐ ์ด์์ ์ฐ์ฐ์๊ฐ ๋ํ๋์ง ์๊ณ , 5์๋ฆฌ๋ณด๋ค ๋ง์ด ์ฐ์๋๋ ์ซ์๋ ์๋ค. ์๋ 0์ผ๋ก ์์ํ ์ ์๋ค. ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ ์์ ๊ธธ์ด๋ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ์ถ๋ ฅ ์ฒซ์งธ ์ค์ ์ ๋ต์ ์ถ๋ ฅํ๋ค. ์์ ์ ๋ ฅ 1 55-50+40 ์์ ์ถ๋ ฅ 1 -35 ์์ ์ ๋ ฅ 2 10+20+30+40 ์์ ์ถ๋ ฅ 2..
2023.02.20 -
- [BOJ-11399][C++] ATM๋ฌธ์ ์ธํ์ํ์๋ ATM์ด 1๋๋ฐ์ ์๋ค. ์ง๊ธ ์ด ATM์์ N๋ช ์ ์ฌ๋๋ค์ด ์ค์ ์์๋ค. ์ฌ๋์ 1๋ฒ๋ถํฐ N๋ฒ๊น์ง ๋ฒํธ๊ฐ ๋งค๊ฒจ์ ธ ์์ผ๋ฉฐ, i๋ฒ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ Pi๋ถ์ด๋ค. ์ฌ๋๋ค์ด ์ค์ ์๋ ์์์ ๋ฐ๋ผ์, ๋์ ์ธ์ถํ๋๋ฐ ํ์ํ ์๊ฐ์ ํฉ์ด ๋ฌ๋ผ์ง๊ฒ ๋๋ค. ์๋ฅผ ๋ค์ด, ์ด 5๋ช ์ด ์๊ณ , $P_1$ = 3, $P_2$ = 1, $P_3$ = 4, $P_4$ = 3, $P_5$ = 2 ์ธ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด๋ณด์. [1, 2, 3, 4, 5] ์์๋ก ์ค์ ์ ๋ค๋ฉด, 1๋ฒ ์ฌ๋์ 3๋ถ๋ง์ ๋์ ๋ฝ์ ์ ์๋ค. 2๋ฒ ์ฌ๋์ 1๋ฒ ์ฌ๋์ด ๋์ ๋ฝ์ ๋ ๊น์ง ๊ธฐ๋ค๋ ค์ผ ํ๊ธฐ ๋๋ฌธ์, 3+1 = 4๋ถ์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค. 3๋ฒ ์ฌ๋์ 1๋ฒ, 2๋ฒ ์ฌ๋์ด ๋์ ๋ฝ์ ๋๊น์ง ๊ธฐ๋ค๋ ค์ผ ํ๊ธฐ ๋๋ฌธ์, ์ด 3+1+..
2023.02.09 -
- [BOJ-1931][C++] ํ์์ค ๋ฐฐ์ ์๊ฐ ์ ํ ๋ฉ๋ชจ๋ฆฌ ์ ํ ์ ์ถ ์ ๋ต ๋งํ ์ฌ๋ ์ ๋ต ๋น์จ 2 ์ด 128 MB 156222 49243 34665 29.706% ๋ฌธ์ ํ ๊ฐ์ ํ์์ค์ด ์๋๋ฐ ์ด๋ฅผ ์ฌ์ฉํ๊ณ ์ ํ๋ N๊ฐ์ ํ์์ ๋ํ์ฌ ํ์์ค ์ฌ์ฉํ๋ฅผ ๋ง๋ค๋ ค๊ณ ํ๋ค. ๊ฐ ํ์ I์ ๋ํด ์์์๊ฐ๊ณผ ๋๋๋ ์๊ฐ์ด ์ฃผ์ด์ ธ ์๊ณ , ๊ฐ ํ์๊ฐ ๊ฒน์น์ง ์๊ฒ ํ๋ฉด์ ํ์์ค์ ์ฌ์ฉํ ์ ์๋ ํ์์ ์ต๋ ๊ฐ์๋ฅผ ์ฐพ์๋ณด์. ๋จ, ํ์๋ ํ๋ฒ ์์ํ๋ฉด ์ค๊ฐ์ ์ค๋จ๋ ์ ์์ผ๋ฉฐ ํ ํ์๊ฐ ๋๋๋ ๊ฒ๊ณผ ๋์์ ๋ค์ ํ์๊ฐ ์์๋ ์ ์๋ค. ํ์์ ์์์๊ฐ๊ณผ ๋๋๋ ์๊ฐ์ด ๊ฐ์ ์๋ ์๋ค. ์ด ๊ฒฝ์ฐ์๋ ์์ํ์๋ง์ ๋๋๋ ๊ฒ์ผ๋ก ์๊ฐํ๋ฉด ๋๋ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ํ์์ ์ N(1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N+1 ์ค๊น์ง ๊ฐ ํ์์ ์ ๋ณด๊ฐ ์ฃผ..
2023.02.06 -
- [BOJ-11047][C++] ๋์ 0๋ฌธ์ ์ค๊ท๊ฐ ๊ฐ์ง๊ณ ์๋ ๋์ ์ ์ด N์ข ๋ฅ์ด๊ณ , ๊ฐ๊ฐ์ ๋์ ์ ๋งค์ฐ ๋ง์ด ๊ฐ์ง๊ณ ์๋ค. ๋์ ์ ์ ์ ํ ์ฌ์ฉํด์ ๊ทธ ๊ฐ์น์ ํฉ์ K๋ก ๋ง๋ค๋ ค๊ณ ํ๋ค. ์ด๋ ํ์ํ ๋์ ๊ฐ์์ ์ต์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ N๊ณผ K๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ๋์ ์ ๊ฐ์น Ai๊ฐ ์ค๋ฆ์ฐจ์์ผ๋ก ์ฃผ์ด์ง๋ค. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2์ธ ๊ฒฝ์ฐ์ Ai๋ Ai-1์ ๋ฐฐ์) ์ถ๋ ฅ ์ฒซ์งธ ์ค์ K์์ ๋ง๋๋๋ฐ ํ์ํ ๋์ ๊ฐ์์ ์ต์๊ฐ์ ์ถ๋ ฅํ๋ค. ์์ ์ ๋ ฅ 1 10 4200 1 5 10 50 100 500 1000 5000 10000 50000 ์์ ์ถ๋ ฅ 1 6 ์์ ์ ๋ ฅ 2 10 4790 1 5 10 50 ..
2 2023.02.06 -
- [BOJ-2830][C++] ์คํ ๋ฐฐ๋ฌ๋ฌธ์ ์๊ทผ์ด๋ ์์ฆ ์คํ๊ณต์ฅ์์ ์คํ์ ๋ฐฐ๋ฌํ๊ณ ์๋ค. ์๊ทผ์ด๋ ์ง๊ธ ์ฌํ๊ฐ๊ฒ์ ์คํ์ ์ ํํ๊ฒ Nํฌ๋ก๊ทธ๋จ์ ๋ฐฐ๋ฌํด์ผ ํ๋ค. ์คํ๊ณต์ฅ์์ ๋ง๋๋ ์คํ์ ๋ด์ง์ ๋ด๊ฒจ์ ธ ์๋ค. ๋ด์ง๋ 3ํฌ๋ก๊ทธ๋จ ๋ด์ง์ 5ํฌ๋ก๊ทธ๋จ ๋ด์ง๊ฐ ์๋ค. ์๊ทผ์ด๋ ๊ท์ฐฎ๊ธฐ ๋๋ฌธ์, ์ต๋ํ ์ ์ ๋ด์ง๋ฅผ ๋ค๊ณ ๊ฐ๋ ค๊ณ ํ๋ค. ์๋ฅผ ๋ค์ด, 18ํฌ๋ก๊ทธ๋จ ์คํ์ ๋ฐฐ๋ฌํด์ผ ํ ๋, 3ํฌ๋ก๊ทธ๋จ ๋ด์ง 6๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ ๋์ง๋ง, 5ํฌ๋ก๊ทธ๋จ 3๊ฐ์ 3ํฌ๋ก๊ทธ๋จ 1๊ฐ๋ฅผ ๋ฐฐ๋ฌํ๋ฉด, ๋ ์ ์ ๊ฐ์์ ๋ด์ง๋ฅผ ๋ฐฐ๋ฌํ ์ ์๋ค. ์๊ทผ์ด๊ฐ ์คํ์ ์ ํํ๊ฒ Nํฌ๋ก๊ทธ๋จ ๋ฐฐ๋ฌํด์ผ ํ ๋, ๋ด์ง ๋ช ๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ฉด ๋๋์ง ๊ทธ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. (3 ≤ N ≤ 5000) ์ถ๋ ฅ ์๊ทผ์ด๊ฐ ๋ฐฐ๋ฌํ๋ ๋ด์ง์ ์ต์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ง์ฝ, ์ ..
2022.10.24