๋ชฉ๋กProblem Solving/Baekjoon (21)

skive ๐ŸŒฟ

[๋ฐฑ์ค€ 17265] ๋‚˜์˜ ์ธ์ƒ์—๋Š” ์ˆ˜ํ•™๊ณผ ํ•จ๊ป˜ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 17265 - ๋‚˜์˜ ์ธ์ƒ์—๋Š” ์ˆ˜ํ•™๊ณผ ํ•จ๊ป˜ n x n ํฌ๊ธฐ์˜ ๊ฒฉ์žํŒ์— ์ˆซ์ž์™€ ์—ฐ์‚ฐ์ž(+, -, *)๊ฐ€ ์„ž์—ฌ ์žˆ๋‹ค.(0,0)์—์„œ ์‹œ์ž‘ํ•˜์—ฌ ์˜ค๋ฅธ์ชฝ์ด๋‚˜ ์•„๋ž˜์ชฝ์œผ๋กœ๋งŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค.์ด๋™ ๊ฒฝ๋กœ๋ฅผ ๋”ฐ๋ผ ์ˆ˜์‹์„ ๊ณ„์‚ฐํ–ˆ์„ ๋•Œ ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ. [๋ฌธ์ œ ํ’€์ด] DFS(๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰) ๋ฅผ ์ด์šฉํ•ด ๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ๊ฒฝ๋กœ๋ฅผ ํƒ์ƒ‰ํ•œ๋‹ค.์ˆซ์ž ์นธ์— ๋„์ฐฉํ•˜๋ฉด ํ˜„์žฌ๊นŒ์ง€์˜ ๊ฐ’๊ณผ ์ง์ „ ์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•ด ์ƒˆ๋กœ์šด ๊ฐ’์„ ๊ณ„์‚ฐํ•œ๋‹ค.์—ฐ์‚ฐ์ž ์นธ์— ๋„์ฐฉํ•˜๋ฉด ํ˜„์žฌ ์—ฐ์‚ฐ์ž๋ฅผ ๊ฐฑ์‹ ํ•œ๋‹ค.(n-1, n-1) ๋„์ฐฉ ์ง€์ ์— ๋„์ฐฉํ•˜๋ฉด ์ง€๊ธˆ๊นŒ์ง€ ๊ณ„์‚ฐ๋œ ๊ฒฐ๊ณผ๋กœ ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’์„ ๊ฐฑ์‹ ํ•œ๋‹ค.์—ฐ์‚ฐ์ž์— ๋”ฐ๋ผ ๊ณ„์‚ฐํ•˜๋Š” ํ•จ์ˆ˜ cal()์„ ๋ช…ํ™•ํžˆ ๋ถ„๋ฆฌํ•ด์„œ ๊ฐ€๋…์„ฑ์„ ๋†’์˜€๋‹ค. ์ฒซ ์‹œ์ž‘์ธ (0,0) ์ขŒํ‘œ๋Š” ํ•ญ์ƒ ์ˆซ์ž๋ผ์„œ DFS๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ ์ˆซ์ž๊ฐ’๋งŒ cur๋กœ ..

Problem Solving/Baekjoon 2025. 4. 26. 16:26
[๋ฐฑ์ค€ 28069] ๊น€๋ฐฅ์ฒœ๊ตญ์˜ ๊ณ„๋‹จ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 28069 - ๊น€๋ฐฅ์ฒœ๊ตญ์˜ ๊ณ„๋‹จ ์‹œ์ž‘์ ์€ 0๋ฒˆ ๊ณ„๋‹จ, ๋ชฉํ‘œ๋Š” n๋ฒˆ ๊ณ„๋‹จ์— ์ •ํ™•ํžˆ k๋ฒˆ ์ดํ•˜์˜ ์ด๋™์œผ๋กœ ๋„๋‹ฌํ•˜๋Š” ๊ฒƒ ์ด๋™ ๋ฐฉ์‹์€ ๋‘ ๊ฐ€์ง€:ํ˜„์žฌ ๊ณ„๋‹จ +1ํ˜„์žฌ ๊ณ„๋‹จ + (ํ˜„์žฌ ๊ณ„๋‹จ / 2)๋ชฉํ‘œ: ์ •ํ™•ํžˆ k๋ฒˆ ์ดํ•˜์˜ ์ด๋™์œผ๋กœ n๋ฒˆ ๊ณ„๋‹จ์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉด "minigimbob", ์•„๋‹ˆ๋ฉด "water" ์ถœ๋ ฅ int nx1 = cur + 1;int nx2 = cur + (cur / 2); [๋ฌธ์ œ ํ’€์ด] ์ด ๋ฌธ์ œ๋Š” ๊ฐ€์ค‘์น˜๊ฐ€ ๋ชจ๋‘ 1์ธ ๊ทธ๋ž˜ํ”„์˜ ์ตœ๋‹จ๊ฑฐ๋ฆฌ ๋ฌธ์ œ์™€ ๊ฐ™์œผ๋ฏ€๋กœ BFS๊ฐ€ ์ ํ•ฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๋ฐฉ๋ฌธ ๋ฐฐ์—ด visited์— 0๋ฒˆ ๊ณ„๋‹จ์—์„œ x๋ฒˆ ๊ณ„๋‹จ๊นŒ์ง€ ๋„๋‹ฌํ•˜๋Š” ์ตœ์†Œ ์ด๋™ ํšŸ์ˆ˜๋ฅผ ์ €์žฅํ•˜๊ณ , BFS ํƒ์ƒ‰ ๋„์ค‘ n๋ฒˆ ๊ณ„๋‹จ์— ๋„๋‹ฌํ–ˆ์„ ๋•Œ visited[n] - 1 BFS์—์„œ๋Š” ๋‹ค์Œ ์ƒํƒœ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด..

Problem Solving/Baekjoon 2025. 4. 25. 01:53
[๋ฐฑ์ค€ 27971] ๊ฐ•์•„์ง€๋Š” ๋งŽ์„์ˆ˜๋ก ์ข‹๋‹ค (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 27971 - ๊ฐ•์•„์ง€๋Š” ๋งŽ์„์ˆ˜๋ก ์ข‹๋‹ค [๋ฌธ์ œ ํ’€์ด]์ด ๋ฌธ์ œ๋Š” ํŠน์ • ์ƒํƒœ(๊ฐ•์•„์ง€ ์ˆ˜)์—์„œ ์‹œ์ž‘ํ•˜์—ฌ A ๋˜๋Š” B๋ฅผ ๋”ํ•˜๋Š” ์‹์œผ๋กœ ์ƒํƒœ๋ฅผ ํ™•์žฅํ•ด ๋‚˜๊ฐ€๋Š” ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ํƒ์ƒ‰ ๋ฌธ์ œ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ BFS(๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰)์„ ํ™œ์šฉํ•˜์—ฌ ์ง๊ด€์ ์œผ๋กœ ๊ตฌํ˜„ํ•ด๋ดค๋‹ค. 1. q.push({0, 0}): ๊ฐ•์•„์ง€ ์ˆ˜ 0๋งˆ๋ฆฌ๋ถ€ํ„ฐ ์‹œ์ž‘, ํ–‰๋™ ํšŸ์ˆ˜๋„ 02. visited[]: ์ค‘๋ณต ๋ฐฉ๋ฌธ ๋ฐฉ์ง€3. arr[]: ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„ ๊ธˆ์ง€ ๊ตฌ๊ฐ„์„ ๋งˆํ‚น. arr[i] == 1์ด๋ฉด ํ•ด๋‹น ์ˆ˜์˜ ๊ฐ•์•„์ง€๋ฅผ ๋งŒ๋“ค๋ฉด ์•ˆ ๋จ4. next > 100000: ๋ฌธ์ œ ์ œํ•œ ๋ฒ”์œ„๋ฅผ ์ดˆ๊ณผํ•˜๋ฉด ๋ฌด์‹œ. BFS ํŠน์„ฑ์ƒ ๊ฐ€์žฅ ๋จผ์ € ๋„์ฐฉํ•œ ๊ฒฝ๋กœ๊ฐ€ ๊ณง ์ตœ์†Œ ํ–‰๋™ ํšŸ์ˆ˜๊ฐ€ ๋œ๋‹ค. [์†Œ์Šค ์ฝ”๋“œ]#include using namespace std;int n, m, ..

Problem Solving/Baekjoon 2025. 4. 24. 02:04
[๋ฐฑ์ค€ 18126] ๋„ˆ๊ตฌ๋ฆฌ ๊ตฌ๊ตฌ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 18126 - ๋„ˆ๊ตฌ๋ฆฌ ๊ตฌ๊ตฌ ๋…ธ๋“œ ์ˆ˜ n (์ตœ๋Œ€ 5,000๊ฐœ)n-1๊ฐœ์˜ ๊ฐ„์„  (ํŠธ๋ฆฌ ๊ตฌ์กฐ)๊ฐ ๊ฐ„์„ ์—๋Š” ๊ฑฐ๋ฆฌ ๊ฐ€์ค‘์น˜๊ฐ€ ์žˆ์Œ์ž„์˜์˜ ๋‘ ์ •์  ์‚ฌ์ด์˜ ์ตœ๋Œ€ ๊ฑฐ๋ฆฌ(ํŠธ๋ฆฌ์˜ ์ง€๋ฆ„)๋ฅผ ์ถœ๋ ฅ [๋ฌธ์ œ ํ’€์ด] 1. DFS ํƒ์ƒ‰์œผ๋กœ 1๋ฒˆ ๋…ธ๋“œ์—์„œ ์ถœ๋ฐœํ•˜์—ฌ ๊ฐ ๋…ธ๋“œ๋ฅผ ํƒ์ƒ‰2. cnt๋ฅผ ๋ˆ„์  ๊ฑฐ๋ฆฌ๋กœ ์ „๋‹ฌํ•˜๋ฉด์„œ res = max(res, cnt)๋กœ ์ตœ๋Œ€๊ฐ’ ๊ฐฑ์‹ 3. ์–‘๋ฐฉํ–ฅ ๊ฐ„์„ ์ด๋ฏ€๋กœ from → to, to → from ๋ชจ๋‘ ์ €์žฅ* ์ฃผ์˜ํ•  ์ : ์ž๋ฃŒํ˜• ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ (๊ฒฐ๊ณผ๊ฐ’์„ long long์œผ๋กœ ํ•ด์•ผ ํ•œ๋‹ค) - ํ’€์ด ๊ณผ์ •์—์„œ ์ƒˆ๋กœ ๋ฐฐ์šด ๊ฒƒ : ๊ตฌ์กฐ ๋ถ„ํ•ด ์„ ์–ธ(structured binding)for (auto [next, d] : a[from]) { ...} ์œ„ ๋ฌธ๋ฒ•์€ ์‚ฌ์‹ค์ƒ ์•„๋ž˜์™€ ๊ฐ™์€ ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. fo..

Problem Solving/Baekjoon 2025. 4. 23. 00:48
[๋ฐฑ์ค€ 17271] ๋ฆฌ๊ทธ ์˜ค๋ธŒ ๋ ˆ์ „์„ค (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 17271 - ๋ฆฌ๊ทธ ์˜ค๋ธŒ ๋ ˆ์ „์„ค(Small) ์Šคํ‚ฌ์„ ์‹œ์ „ํ•ด ์ •ํ™•ํžˆ N์ดˆ๋ฅผ ์ฑ„์šฐ๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ๋‹ค. ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์Šคํ‚ฌ์€ ๋‘ ๊ฐ€์ง€:A ์Šคํ‚ฌ: 1์ดˆ ์†Œ๋ชจB ์Šคํ‚ฌ: M์ดˆ ์†Œ๋ชจ๊ฐ ์Šคํ‚ฌ์€ ๋ฌด์ œํ•œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ณ , ๊ฒฐ๊ณผ๋Š” 1,000,000,007๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. [๋ฌธ์ œ ํ’€์ด]์‚ฌ์šฉํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜: ๋™์  ๊ณ„ํš๋ฒ• (DP)์ฒ˜์Œ์—๋Š” ๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ์Šคํ‚ฌ ์กฐํ•ฉ์„ DFS๋กœ ์™„์ „ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ์‹์ด ๋– ์˜ฌ๋ž์ง€๋งŒ N์ด ์ตœ๋Œ€ 10,000์ด๊ธฐ ๋•Œ๋ฌธ์—, ๋‹จ์ˆœ DFS๋Š” ์ค‘๋ณต ํ˜ธ์ถœ์ด ๋งŽ์•„์ง€๊ธฐ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒƒ ๊ฐ™์•„์„œ DP๋ฅผ ์ด์šฉํ–ˆ๋‹ค. ๋‹จ์ˆœ DFS๋Š” ์‹œ๊ฐ„ ์ดˆ๊ณผ์ง€๋งŒ, ๋ฉ”๋ชจ์ด์ œ์ด์…˜์„ ์ ์šฉํ•œ DFS๋Š” ์‚ฌ์‹ค์ƒ Top-Down DP๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. dp[ i ]: ์ด i์ดˆ๋ฅผ ์ •ํ™•ํžˆ ์ฑ„์šฐ๋Š” ..

Problem Solving/Baekjoon 2025. 4. 19. 14:38
[๋ฐฑ์ค€ 17484] ์ง„์šฐ์˜ ๋‹ฌ ์—ฌํ–‰ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 17484 - ์ง„์šฐ์˜ ๋‹ฌ ์—ฌํ–‰ ๋กœ๋ด‡์€ ๋งจ ์œ„ ์ค„์˜ ์–ด๋А ์นธ์—์„œ๋“  ์‹œ์ž‘ ๊ฐ€๋Šฅ๋งค ํ„ด๋งˆ๋‹ค โ†™, ↓, โ†˜ ๋ฐฉํ–ฅ ์ค‘ ํ•˜๋‚˜๋กœ ์ด๋™๋‹จ, ๊ฐ™์€ ๋ฐฉํ–ฅ์„ ์—ฐ์†ํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Œnํ–‰์— ๋„๋‹ฌํ•  ๋•Œ๊นŒ์ง€์˜ ์ตœ์†Œ ์—ฐ๋ฃŒ ์†Œ๋น„๋Ÿ‰์„ ๊ตฌํ•ด์•ผ ํ•จ [๋ฌธ์ œ ํ’€์ด]DFS๋กœ ๋ชจ๋“  ๊ฒฝ๋กœ๋ฅผ ํƒ์ƒ‰ํ•˜๊ณ  ์žˆ์—ˆ์ง€๋งŒ, "๊ฐ™์€ ๋ฐฉํ–ฅ์„ ์—ฐ์†ํ•ด์„œ ์ด๋™ํ•  ์ˆ˜ ์—†๋‹ค"๋Š” ์ œ์•ฝ ์กฐ๊ฑด์„ ๊ณ ๋ คํ•˜์ง€ ๋ชปํ•จ.์ด๋กœ ์ธํ•ด ์กฐ๊ฑด์„ ์œ„๋ฐ˜ํ•œ ๊ฒฝ๋กœ๋„ ํฌํ•จ๋˜์–ด ์ •๋‹ต๋ณด๋‹ค ๋” ์ž‘์€ ์ž˜๋ชป๋œ ๊ฐ’์ด ๊ฒฐ๊ณผ๋กœ ์ถœ๋ ฅ๋  ์ˆ˜ ์žˆ์Œ.๊ฐ™์€ ๋ฐฉํ–ฅ์„ ์—ฐ์†ํ•ด์„œ ์“ฐ์ง€ ์•Š๋„๋ก prev_dir์ด๋ผ๋Š” ์ธ์ž๋ฅผ ์ถ”๊ฐ€ํ•ด ์ด์ „ ๋ฐฉํ–ฅ๊ณผ ๋น„๊ต DFS๋Š” ์ค‘๋ณต ๊ฒฝ๋กœ๊ฐ€ ๋งŽ์•„ ํšจ์œจ์ด ๋–จ์–ด์ง.๊ทธ๋ž˜์„œ dp[y][x][dir] = yํ–‰ x์—ด์— dir ๋ฐฉํ–ฅ์œผ๋กœ ๋„์ฐฉํ–ˆ์„ ๋•Œ ์ตœ์†Œ ์—ฐ๋ฃŒ๋กœ ์ •์˜ํ•˜๋ฉด ์ค‘๋ณต ๊ฒฝ๋กœ ์ œ๊ฑฐ + ๋น ๋ฅธ ์—ฐ์‚ฐ ๊ฐ€๋Šฅ...

Problem Solving/Baekjoon 2025. 4. 18. 01:58
[๋ฐฑ์ค€ 2156] ํฌ๋„์ฃผ ์‹œ์‹ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 2156 - ํฌ๋„์ฃผ ์‹œ์‹ ํฌ๋„์ฃผ ์ž” n๊ฐœ๊ฐ€ ์ผ๋ ฌ๋กœ ๋†“์—ฌ ์žˆ๊ณ , ๊ฐ ์ž”๋งˆ๋‹ค ํฌ๋„์ฃผ์˜ ์–‘์ด ์ฃผ์–ด์ง„๋‹ค.ํฌ๋„์ฃผ๋Š” ์—ฐ์†์œผ๋กœ 3์ž”์„ ๋งˆ์‹ค ์ˆ˜ ์—†๋‹ค.๋งˆ์‹ค ์ˆ˜ ์žˆ๋Š” ํฌ๋„์ฃผ์˜ ์ตœ๋Œ€ ์–‘์„ ๊ตฌํ•˜๋ผ. [๋ฌธ์ œ ํ’€์ด]์ ‘๊ทผ ๋ฐฉ๋ฒ•: Dynamic Programmingdp[i]๋ฅผ i๋ฒˆ์งธ ์ž”๊นŒ์ง€ ๊ณ ๋ คํ–ˆ์„ ๋•Œ ๋งˆ์‹ค ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ํฌ๋„์ฃผ ์–‘์ด๋ผ๊ณ  ์ •์˜ํ•œ๋‹ค. i๋ฒˆ์งธ ํฌ๋„์ฃผ์˜ ์–‘์€ a[i]์ด๋‹ค.์„ ํƒ์ง€๋Š” ์•„๋ž˜ ์„ธ ๊ฐ€์ง€ ์ค‘ ํ•˜๋‚˜์ด๋‹ค:ํ˜„์žฌ ์ž”์„ ๋งˆ์‹œ์ง€ ์•Š์Œ → dp[i - 1]ํ˜„์žฌ ์ž”๋งŒ ๋งˆ์‹ฌ (์ด์ „ ์ž”์€ ๋งˆ์‹œ์ง€ ์•Š์Œ) → dp[i - 2] + a[i]์ด์ „ ์ž”๊ณผ ํ˜„์žฌ ์ž” ๋‘˜ ๋‹ค ๋งˆ์‹ฌ (i-3๋ฒˆ์งธ๋Š” ๋งˆ์‹œ์ง€ ์•Š์•„์•ผ ํ•จ) → dp[i - 3] + a[i - 1] + a[i] ์ ํ™”์‹: dp[0] = a[0];dp[1] = a[0] + ..

Problem Solving/Baekjoon 2025. 4. 16. 01:20
[๋ฐฑ์ค€ 16401] ๊ณผ์ž ๋‚˜๋ˆ ์ฃผ๊ธฐ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 16401 - ๊ณผ์ž ๋‚˜๋ˆ ์ฃผ๊ธฐ ์กฐ์นด M๋ช…์—๊ฒŒ ๊ณผ์ž N๊ฐœ๋ฅผ ๋‚˜๋ˆ„์–ด ์ฃผ๋ ค๊ณ  ํ•œ๋‹ค. ๊ฐ ์กฐ์นด๋Š” ๋™์ผํ•œ ๊ธธ์ด์˜ ๊ณผ์ž ํ•œ ๊ฐœ๋งŒ ๋ฐ›๋Š”๋‹ค.๊ณผ์ž๋“ค์€ ์ž๋ฅผ ์ˆ˜ ์žˆ๊ณ , ์กฐ์นด์˜ ์ˆ˜๋ณด๋‹ค ๊ณผ์ž์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ ์„ ์ˆ˜๋„ ์žˆ๋‹ค.๋ชจ๋“  ์กฐ์นด์—๊ฒŒ ๋™์ผํ•œ ๊ธธ์ด์˜ ๊ณผ์ž๋ฅผ ๋‚˜๋ˆ ์ฃผ๋˜, ๊ทธ ๊ธธ์ด๋ฅผ ์ตœ๋Œ€๋กœ ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ๋‹ค. [๋ฌธ์ œ ํ’€์ด]์‚ฌ์šฉํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜: ์ด๋ถ„ ํƒ์ƒ‰ (Binary Search)์ด ๋ฌธ์ œ๋Š” '์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ตœ๋Œ€๊ฐ’'์„ ์ฐพ๋Š” Parametric Search(ํŒŒ๋ผ๋ฉ”ํŠธ๋ฆญ ์„œ์น˜) ๋ฌธ์ œ๋‹ค.์ด๋ถ„ ํƒ์ƒ‰์„ ํ†ตํ•ด ๋‚˜๋ˆ ์ค„ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๊ธธ์ด๋ฅผ ์ฐพ์•„์•ผ ํ•œ๋‹ค. [์†Œ์Šค ์ฝ”๋“œ]#include using namespace std;int m, n, res, l, r, mid, mx, cnt;vector v;int main() { cin >> m >> ..

Problem Solving/Baekjoon 2025. 4. 15. 02:19
[๋ฐฑ์ค€ 1783] ๋ณ‘๋“  ๋‚˜์ดํŠธ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 1783 - ๋ณ‘๋“  ๋‚˜์ดํŠธ ์ฒด์ŠคํŒ์˜ ํฌ๊ธฐ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค: n x m์ด 4๊ฐ€์ง€ ์ด๋™ ๋ฐฉ๋ฒ•๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค:(−2, +1), (−1, +2), (+1, +2), (+2, +1)๋‹จ, ์ด๋™ ํšŸ์ˆ˜๊ฐ€ 4๋ฒˆ ์ด์ƒ์ด๋ฉด 4๊ฐ€์ง€ ๋ฐฉํ–ฅ ๋ชจ๋‘ ํ•œ ๋ฒˆ์”ฉ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.๋‚˜์ดํŠธ๋Š” ์ตœ๋Œ€ํ•œ ๋งŽ์€ ์นธ์„ ๋ฐฉ๋ฌธํ•˜๋ ค๊ณ  ํ•œ๋‹ค.๋ฐฉ๋ฌธํ•  ์ˆ˜ ์žˆ๋Š” ์นธ์˜ ์ตœ๋Œ“๊ฐ’์„ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ  [๋ฌธ์ œ ํ’€์ด]์ด๋™ ์ œ์•ฝ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ–ˆ๋‹ค. ์ด๋™ ๋ฐฉ์‹์ด ์ผ๋ฐ˜์ ์ธ ๋‚˜์ดํŠธ์™€ ๋‹ฌ๋ฆฌ 4๊ฐ€์ง€๋กœ ํ•œ์ •๋˜๊ณ , ์œ„๋กœ๋Š” ์›€์ง์ผ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ํ–‰(n)์˜ ๊ฐ’์ด ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค.n == 1: ์‹œ์ž‘์ ๋งŒ ๋ฐฉ๋ฌธ ๊ฐ€๋Šฅ → ์ •๋‹ต์€ 1n == 2: ์ด๋™ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ๊ฐ€ ์ œํ•œ๋˜์–ด (+1, +2) ๋˜๋Š” (-1, +2)๋งŒ ๊ฐ€๋Šฅ. ์ฆ‰, ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋‘ ์นธ, ์œ„์•„๋ž˜๋กœ ํ•œ ์นธ.2์นธ์„ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๊ฐ€๋ฉด ํ•˜๋‚˜ ์ด๋™..

Problem Solving/Baekjoon 2025. 4. 14. 02:02
[๋ฐฑ์ค€ 2437] ์ €์šธ (C++)

[๋ฌธ์ œ]๋ฐฑ์ค€ 2437 - ์ €์šธ  ํ•˜๋‚˜์˜ ์–‘์˜ ์ •์ˆ˜ ๋ฌด๊ฒŒ๋ฅผ ์ธก์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ถ”๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด๋•Œ, ์ฃผ์–ด์ง„ ์ถ”๋“ค๋กœ ์ธก์ •ํ•  ์ˆ˜ ์—†๋Š” ๊ฐ€์žฅ ์ž‘์€ ์–‘์˜ ์ •์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ถ”๋“ค์ด {1, 1, 2, 5}์ผ ๋•Œ, 10๊นŒ์ง€๋Š” ๋งŒ๋“ค ์ˆ˜ ์žˆ์ง€๋งŒ 11์€ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค. ์ด์ฒ˜๋Ÿผ ๋ˆ„๋ฝ๋œ ์ตœ์†Œ์˜ ๋ฌด๊ฒŒ๋ฅผ ์ฐพ๋Š” ๊ฒŒ ํ•ต์‹ฌ์ด๋‹ค.   [๋ฌธ์ œ ํ’€์ด]์ด ๋ฌธ์ œ๋Š” ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜(Greedy Algorithm)์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฐ€์žฅ ์ž‘์€ ๋ฌด๊ฒŒ๋ถ€ํ„ฐ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”์ง€ ์ฐจ๋ก€๋กœ ํ™•์ธํ•˜๋ฉด์„œ, ์ธก์ • ๊ฐ€๋Šฅํ•œ ๋ฌด๊ฒŒ์˜ ๋ฒ”์œ„๋ฅผ ํ™•์žฅํ•˜์˜€๋‹ค. ์ž…๋ ฅ๋ฐ›์€ ์ถ” ๋ฌด๊ฒŒ๋“ค์„ ์ •๋ ฌํ•œ๋‹ค.res ๋ฅผ 1๋กœ ์ดˆ๊ธฐํ™”ํ•œ๋‹ค. res ๋Š” ์ง€๊ธˆ๊นŒ์ง€ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฌด๊ฒŒ ๋ฒ”์œ„ [1, res]๋ฅผ ์˜๋ฏธํ•œ๋‹ค.์ถ”์˜ ๋ฌด๊ฒŒ๋ฅผ ํ•˜๋‚˜์”ฉ ๋ณด๋ฉฐ,๋งŒ์•ฝ ํ˜„์žฌ ์ถ”์˜ ๋ฌด๊ฒŒ๊ฐ€ res๋ณด๋‹ค ํฌ๋ฉด,..

Problem Solving/Baekjoon 2025. 4. 11. 01:00