๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

Algorithm242

[๋ฐฑ์ค€] 2579๋ฒˆ: ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ(DP, ๋™์  ๊ณ„ํš๋ฒ•) https://www.acmicpc.net/problem/2579 2579๋ฒˆ: ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ฒŒ์ž„์€ ๊ณ„๋‹จ ์•„๋ž˜ ์‹œ์ž‘์ ๋ถ€ํ„ฐ ๊ณ„๋‹จ ๊ผญ๋Œ€๊ธฐ์— ์œ„์น˜ํ•œ ๋„์ฐฉ์ ๊นŒ์ง€ ๊ฐ€๋Š” ๊ฒŒ์ž„์ด๋‹ค. ๊ณผ ๊ฐ™์ด ๊ฐ๊ฐ์˜ ๊ณ„๋‹จ์—๋Š” ์ผ์ •ํ•œ ์ ์ˆ˜๊ฐ€ ์“ฐ์—ฌ ์žˆ๋Š”๋ฐ ๊ณ„๋‹จ์„ ๋ฐŸ์œผ๋ฉด ๊ทธ ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ ์ˆ˜๋ฅผ ์–ป๊ฒŒ ๋œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์™€ ๊ฐ™์ด ์‹œ์ž‘์ ์—์„œ๋ถ€ํ„ฐ ์ฒซ ๋ฒˆ์งธ, ๋‘ ๋ฒˆ์งธ, ๋„ค ๋ฒˆ์งธ, ์—ฌ์„ฏ ๋ฒˆ์งธ ๊ณ„๋‹จ์„ ๋ฐŸ์•„ ๋„์ฐฉ์ ์— ๋„๋‹ฌํ•˜๋ฉด ์ด ์ ์ˆ˜๋Š” 10 + 20 + 25 + 20 = 75์ ์ด ๋œ๋‹ค. ๊ณ„๋‹จ ์˜ค๋ฅด๋Š” ๋ฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทœ์น™์ด ์žˆ๋‹ค. ๊ณ„๋‹จ์€ ํ•œ ๋ฒˆ์— ํ•œ ๊ณ„๋‹จ์”ฉ www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre.. 2020. 2. 21.
[Codeforces] 1097A: Gennady and a Card Game(brute force) https://codeforces.com/problemset/problem/1097/A Problem - 1097A - Codeforces codeforces.com ๋ฌธ์ œ Gennady๋Š” ์‹œ๊ณจ์— ๊ทธ๊ฐ€ ํ‰ํ™”๋กœ์šด ์‚ถ์„ ์‚ฌ๋Š” ์ž‘์€ ํ˜ธํ…”์„ ์†Œ์œ ํ•˜๊ณ  ์žˆ๋‹ค. ๊ทธ๋Š” ๊ทธ์˜ ํ˜ธํ…”์— ๋ฌต๋Š” ๊ด€๊ด‘๊ฐ๋“ค๊ณผ ํ•จ๊ป˜ ๊ธด ์‚ฐ์ฑ…์„ ํ•˜๊ณ , ์ผ๊ด‘์š•์„ ํ•˜๊ณ , ์นด๋“œ๋†€์ด๋ฅผ ํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•œ๋‹ค. ๊ทธ๊ฐ€ ๊ฐ€์žฅ ์ข‹์•„ํ•˜๋Š” ๊ฒŒ์ž„์€ "๋งˆ์šฐ๋งˆ์šฐ"์ด๋‹ค. ๋งˆ์šฐ๋งˆ์šฐ ๊ฒŒ์ž„์„ ํ•˜๋ ค๋ฉด 52์žฅ์˜ ์นด๋“œ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ๊ฐ ์นด๋“œ์—๋Š” suit(๋‹ค์ด์•„๋ชฌ๋“œ — D, ํด๋Ÿฝ — C, ์ŠคํŽ˜์ด๋“œ — S, ๋˜๋Š” ํ•˜ํŠธ H H)๊ณผ rank(2, 3, 4, 5, 6, 7, 8, 9, T, J, Q, K, A)์ด ์žˆ๋‹ค. ๊ฒŒ์ž„์ด ์‹œ์ž‘๋  ๋•Œ, ํ…Œ์ด๋ธ” ์œ„์— ํ•˜๋‚˜์˜ ์นด๋“œ๊ฐ€ ์žˆ๊ณ  ๋‹น์‹ ์€ ๋‹น์‹ ์˜ ์†์— 5๊ฐœ์˜ ์นด.. 2020. 2. 21.
[๋ฐฑ์ค€] 1932๋ฒˆ: ์ •์ˆ˜ ์‚ผ๊ฐํ˜•(DP, ๋™์ ๊ณ„ํš๋ฒ•) ๋ฐฑ์ค€ 1932๋ฒˆ - ์ •์ˆ˜ ์‚ผ๊ฐํ˜•(DP) https://www.acmicpc.net/problem/1932 1932๋ฒˆ: ์ •์ˆ˜ ์‚ผ๊ฐํ˜• ๋ฌธ์ œ 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 ์œ„ ๊ทธ๋ฆผ์€ ํฌ๊ธฐ๊ฐ€ 5์ธ ์ •์ˆ˜ ์‚ผ๊ฐํ˜•์˜ ํ•œ ๋ชจ์Šต์ด๋‹ค. ๋งจ ์œ„์ธต 7๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์„œ ์•„๋ž˜์— ์žˆ๋Š” ์ˆ˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜์—ฌ ์•„๋ž˜์ธต์œผ๋กœ ๋‚ด๋ ค์˜ฌ ๋•Œ, ์ด์ œ๊นŒ์ง€ ์„ ํƒ๋œ ์ˆ˜์˜ ํ•ฉ์ด ์ตœ๋Œ€๊ฐ€ ๋˜๋Š” ๊ฒฝ๋กœ๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. ์•„๋ž˜์ธต์— ์žˆ๋Š” ์ˆ˜๋Š” ํ˜„์žฌ ์ธต์—์„œ ์„ ํƒ๋œ ์ˆ˜์˜ ๋Œ€๊ฐ์„  ์™ผ์ชฝ ๋˜๋Š” ๋Œ€๊ฐ์„  ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” ๊ฒƒ ์ค‘์—์„œ๋งŒ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค. ์‚ผ๊ฐํ˜•์˜ ํฌ๊ธฐ๋Š” 1 ์ด์ƒ 500 ์ดํ•˜์ด๋‹ค. ์‚ผ๊ฐํ˜•์„ ์ด๋ฃจ๊ณ  ์žˆ๋Š” ๊ฐ ์ˆ˜๋Š” www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOEx.. 2020. 2. 20.
[๋ฐฑ์ค€] 15652๋ฒˆ: N๊ณผ M (4) (dfs, ์ค‘๋ณตํฌํ•จ, ๋น„๋‚ด๋ฆผ์ฐจ์ˆœ) https://www.acmicpc.net/problem/15652 15652๋ฒˆ: N๊ณผ M (4) ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ์ˆ˜์—ด์€ ์‚ฌ์ „ ์ˆœ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static int arr[]; public static int N; public static int M; .. 2020. 2. 20.
[Codeforces] 996A - Hit the Lottery https://codeforces.com/problemset/problem/996/A Problem - 996A - Codeforces codeforces.com ๋ฌธ์ œ Allen์€ ๋งŽ์€ ๋ˆ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ๋Š” ์€ํ–‰์— n ๋‹ฌ๋Ÿฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ๋Š” ๋ณด์•ˆ์ƒ์˜ ์ด์œ ๋กœ ํ˜„๊ธˆ์œผ๋กœ ์ธ์ถœํ•˜๊ธฐ๋ฅผ ์›ํ•œ๋‹ค.(์šฐ๋ฆฌ๋Š” ์—ฌ๊ธฐ์— ์ด์œ ๋ฅผ ๊ณต๊ฐœํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค.) ๋‹ฌ๋Ÿฌ ์ง€ํ์˜ ์•ก์ˆ˜๋Š” 1, 5, 10, 20, 100์ด๋‹ค. ์•จ๋Ÿฐ์ด ์ž”๊ธˆ์„ ์ „๋ถ€ ์ธ์ถœํ•œ ํ›„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ตœ์†Œํ•œ์˜ ์ง€ํ ๊ฐฏ์ˆ˜๋Š” ๋ช‡๊ฐœ์ธ๊ฐ€? Note ์ฒซ ๋ฒˆ์งธ ์ƒ˜ํ”Œ ์‚ฌ๋ก€์—์„œ ์•จ๋Ÿฐ์€ 100๋‹ฌ๋Ÿฌ ์ง€ํ, 20๋‹ฌ๋Ÿฌ ์ง€ํ, 5๋‹ฌ๋Ÿฌ ์ง€ํ๋กœ ์ด๊ฒƒ์„ ์ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค. ์•จ๋Ÿฐ์ด ํ•œ ์žฅ ํ˜น์€ ๋‘ ์žฅ์˜ ์ง€ํ๋กœ 125๋‹ฌ๋Ÿฌ๋ฅผ ๋ฐ›์„ ๋ฐฉ๋ฒ•์€ ์—†๋‹ค. ๋‘ ๋ฒˆ์งธ ์ƒ˜ํ”Œ ์‚ฌ๋ก€์—์„œ ์•จ๋Ÿฐ์€ 20๋‹ฌ๋Ÿฌ ์ง€ํ 2์žฅ๊ณผ 1๋‹ฌ๋Ÿฌ.. 2020. 2. 20.
[๋ฐฑ์ค€] 15651๋ฒˆ: N๊ณผ M (3) (dfs, ์ค‘๋ณตํฌํ•จ) https://www.acmicpc.net/problem/15651 15651๋ฒˆ: N๊ณผ M (3) ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ์ˆ˜์—ด์€ ์‚ฌ์ „ ์ˆœ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static int arr[]; public static int N; public static int M; .. 2020. 2. 19.
[๋ฐฑ์ค€] 2217๋ฒˆ: ๋กœํ”„(๊ทธ๋ฆฌ๋””, ์ˆ˜ํ•™) https://www.acmicpc.net/problem/2217 2217๋ฒˆ: ๋กœํ”„ N(1≤N≤100,000)๊ฐœ์˜ ๋กœํ”„๊ฐ€ ์žˆ๋‹ค. ์ด ๋กœํ”„๋ฅผ ์ด์šฉํ•˜์—ฌ ์ด๋Ÿฐ ์ €๋Ÿฐ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋กœํ”„๋Š” ๊ทธ ๊ตต๊ธฐ๋‚˜ ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฌผ์ฒด์˜ ์ค‘๋Ÿ‰์ด ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜๋„ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋กœํ”„๋ฅผ ๋ณ‘๋ ฌ๋กœ ์—ฐ๊ฒฐํ•˜๋ฉด ๊ฐ๊ฐ์˜ ๋กœํ”„์— ๊ฑธ๋ฆฌ๋Š” ์ค‘๋Ÿ‰์„ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค. k๊ฐœ์˜ ๋กœํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋Ÿ‰์ด w์ธ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ๋•Œ, ๊ฐ๊ฐ์˜ ๋กœํ”„์—๋Š” ๋ชจ๋‘ ๊ณ ๋ฅด๊ฒŒ w/k ๋งŒํผ์˜ ์ค‘๋Ÿ‰์ด ๊ฑธ๋ฆฌ๊ฒŒ ๋œ๋‹ค. ๊ฐ ๋กœํ”„๋“ค์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ด ๋กœํ”„๋“ค์„ www.acmicpc.net ์ฝ”๋“œ import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.. 2020. 2. 19.
[Codeforces] 1154A - Restoring Three Numbers https://codeforces.com/problemset/problem/1154/A Problem - 1154A - Codeforces codeforces.com ๋ฌธ์ œ ํ•ด์„ Polycarp๋Š” a, b, c์˜ ์„ธ ๊ฐœ์˜ ์–‘์˜ ์ •์ˆ˜๋ฅผ ์ถ”์ธกํ–ˆ๋‹ค. ๊ทธ๋Š” ์ด ์ˆซ์ž๋“ค์„ ๋น„๋ฐ€์— ๋ถ€์น˜์ง€๋งŒ, ์ž„์˜์˜ ์ˆœ์„œ๋กœ ๊ฒŒ์‹œํŒ์— ๋„ค ๊ฐœ์˜ ์ˆซ์ž๋ฅผ ์ ๋Š”๋‹ค. ์ฆ‰, ๊ทธ๋“ค์˜ ์Œ์œผ๋กœ ๋œ ์ดํ•ฉ(3๊ฐœ์˜ ์ˆซ์ž)๊ณผ ์„ธ ๊ฐœ์˜ ์ˆซ์ž(1๊ฐœ์˜ ์ˆซ์ž)์˜ ํ•ฉ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์ž„์˜์˜ ์ˆœ์„œ๋กœ ๊ธฐํŒ์—๋Š” a+b, a+c, b+c, a+b+c์˜ ๋„ค ๊ฐœ์˜ ์ˆซ์ž๊ฐ€ ์žˆ๋‹ค. ์ฃผ์–ด์ง„ ์ˆซ์ž๋ฅผ ์‚ฌ์šฉํ•ด์„œ a, b, c์˜ ์„ธ ์ˆซ์ž๋ฅผ ๋งžํ˜€์•ผ ํ•œ๋‹ค. ์–ด๋–ค ์ˆœ์„œ๋กœ๋“  ์„ธ ๊ฐœ์˜ ์ถ”์ธก๋œ ์ •์ˆ˜๋ฅผ ์ธ์‡„ํ•œ๋‹ค. ์ฃผ์–ด์ง„ ์ผ๋ถ€ ์ˆซ์ž a, b, c๊ฐ€ ๊ฐ™์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•œ๋‹ค(a=b=c๋„ ๊ฐ€๋Šฅํ•˜๋‹ค). ์ž…๋ ฅ .. 2020. 2. 19.
[๋ฐฑ์ค€] 15650๋ฒˆ: N๊ณผ M (2) (dfs, ๋ฐฑํŠธ๋ž˜ํ‚น) https://www.acmicpc.net/problem/15650 15650๋ฒˆ: N๊ณผ M (2) ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ์ˆ˜์—ด์€ ์‚ฌ์ „ ์ˆœ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.util.Scanner; public class Main { public static int arr[]; public static boolean visit[]; public static int N; public static int M; public static StringBuilder sb = new StringBuilder(); public static vo.. 2020. 2. 18.
[๋ฐฑ์ค€] 15649๋ฒˆ: N๊ณผ M (1) (dfs, ๋ฐฑํŠธ๋ž˜ํ‚น) https://www.acmicpc.net/problem/15649 15649๋ฒˆ: N๊ณผ M (1) ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ์ˆ˜์—ด์€ ์‚ฌ์ „ ์ˆœ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. www.acmicpc.net ์ฝ”๋“œ import java.util.Scanner; public class Main { static int arr[]; static boolean visit[]; static int N; static int M; static StringBuilder sb = new StringBuilder(); public static void dfs(int count) { // dfs ํ•จ์ˆ˜ ํƒˆ์ถœ - .. 2020. 2. 18.
๋ฐ˜์‘ํ˜•