๐Ÿ–ฅ๏ธ Study Note/Coding Test

    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๋ณด์„ ์‡ผํ•‘ (C++)

    https://school.programmers.co.kr/learn/courses/30/lessons/67258# ๋ฌธ์ œ ์„ค๋ช… [๋ณธ ๋ฌธ์ œ๋Š” ์ •ํ™•์„ฑ๊ณผ ํšจ์œจ์„ฑ ํ…Œ์ŠคํŠธ ๊ฐ๊ฐ ์ ์ˆ˜๊ฐ€ ์žˆ๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.] ๊ฐœ๋ฐœ์ž ์ถœ์‹ ์œผ๋กœ ์„ธ๊ณ„ ์ตœ๊ณ ์˜ ๊ฐ‘๋ถ€๊ฐ€ ๋œ ์–ดํ”ผ์น˜๋Š” ์ŠคํŠธ๋ ˆ์Šค๋ฅผ ๋ฐ›์„ ๋•Œ๋ฉด ์ด๋ฅผ ํ’€๊ธฐ ์œ„ํ•ด ์˜คํ”„๋ผ์ธ ๋งค์žฅ์— ์‡ผํ•‘์„ ํ•˜๋Ÿฌ ๊ฐ€๊ณค ํ•ฉ๋‹ˆ๋‹ค. ์–ดํ”ผ์น˜๋Š” ์‡ผํ•‘์„ ํ•  ๋•Œ๋ฉด ๋งค์žฅ ์ง„์—ด๋Œ€์˜ ํŠน์ • ๋ฒ”์œ„์˜ ๋ฌผ๊ฑด๋“ค์„ ๋ชจ๋‘ ์‹น์“ธ์ด ๊ตฌ๋งคํ•˜๋Š” ์Šต๊ด€์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋Š ๋‚  ์ŠคํŠธ๋ ˆ์Šค๋ฅผ ํ’€๊ธฐ ์œ„ํ•ด ๋ณด์„ ๋งค์žฅ์— ์‡ผํ•‘์„ ํ•˜๋Ÿฌ ๊ฐ„ ์–ดํ”ผ์น˜๋Š” ์ด์ „์ฒ˜๋Ÿผ ์ง„์—ด๋Œ€์˜ ํŠน์ • ๋ฒ”์œ„์˜ ๋ณด์„์„ ๋ชจ๋‘ ๊ตฌ๋งคํ•˜๋˜ ํŠน๋ณ„ํžˆ ์•„๋ž˜ ๋ชฉ์ ์„ ๋‹ฌ์„ฑํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์ง„์—ด๋œ ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๋ณด์„์„ ์ ์–ด๋„ 1๊ฐœ ์ด์ƒ ํฌํ•จํ•˜๋Š” ๊ฐ€์žฅ ์งง์€ ๊ตฌ๊ฐ„์„ ์ฐพ์•„์„œ ๊ตฌ๋งค ์˜ˆ๋ฅผ ๋“ค์–ด ์•„๋ž˜ ์ง„์—ด๋Œ€๋Š” 4์ข…๋ฅ˜์˜ ๋ณด์„(RU..

    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๋“ฑ์‚ฐ์ฝ”์Šค ์ •ํ•˜๊ธฐ (C++)

    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๋“ฑ์‚ฐ์ฝ”์Šค ์ •ํ•˜๊ธฐ (C++)

    https://school.programmers.co.kr/learn/courses/30/lessons/118669#qna ๋ฌธ์ œ ์„ค๋ช… XX์‚ฐ์€ n๊ฐœ์˜ ์ง€์ ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์ง€์ ์€ 1๋ถ€ํ„ฐ n๊นŒ์ง€ ๋ฒˆํ˜ธ๊ฐ€ ๋ถ™์–ด์žˆ์œผ๋ฉฐ, ์ถœ์ž…๊ตฌ, ์‰ผํ„ฐ, ํ˜น์€ ์‚ฐ๋ด‰์šฐ๋ฆฌ์ž…๋‹ˆ๋‹ค. ๊ฐ ์ง€์ ์€ ์–‘๋ฐฉํ–ฅ ํ†ตํ–‰์ด ๊ฐ€๋Šฅํ•œ ๋“ฑ์‚ฐ๋กœ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์„œ๋กœ ๋‹ค๋ฅธ ์ง€์ ์„ ์ด๋™ํ•  ๋•Œ ์ด ๋“ฑ์‚ฐ๋กœ๋ฅผ ์ด์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ, ๋“ฑ์‚ฐ๋กœ๋ณ„๋กœ ์ด๋™ํ•˜๋Š”๋ฐ ์ผ์ • ์‹œ๊ฐ„์ด ์†Œ์š”๋ฉ๋‹ˆ๋‹ค. ๋“ฑ์‚ฐ์ฝ”์Šค๋Š” ๋ฐฉ๋ฌธํ•  ์ง€์  ๋ฒˆํ˜ธ๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ๋‚˜์—ดํ•˜์—ฌ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 1-2-3-2-1 ์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋“ฑ์‚ฐ์ฝ”์Šค๋Š” 1๋ฒˆ์ง€์ ์—์„œ ์ถœ๋ฐœํ•˜์—ฌ 2๋ฒˆ, 3๋ฒˆ, 2๋ฒˆ, 1๋ฒˆ ์ง€์ ์„ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฉ๋ฌธํ•œ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ๋“ฑ์‚ฐ์ฝ”์Šค๋ฅผ ๋”ฐ๋ผ ์ด๋™ํ•˜๋Š” ์ค‘ ์‰ผํ„ฐ ํ˜น์€ ์‚ฐ๋ด‰์šฐ๋ฆฌ๋ฅผ ๋ฐฉ๋ฌธํ•  ๋•Œ๋งˆ๋‹ค ํœด์‹..

    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ์–‘๊ณผ ๋Š‘๋Œ€ (C++)

    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ์–‘๊ณผ ๋Š‘๋Œ€ (C++)

    https://school.programmers.co.kr/learn/courses/30/lessons/92343 ๋ฌธ์ œ ์„ค๋ช… 2์ง„ ํŠธ๋ฆฌ ๋ชจ์–‘ ์ดˆ์›์˜ ๊ฐ ๋…ธ๋“œ์— ๋Š‘๋Œ€์™€ ์–‘์ด ํ•œ ๋งˆ๋ฆฌ์”ฉ ๋†“์—ฌ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ดˆ์›์˜ ๋ฃจํŠธ ๋…ธ๋“œ์—์„œ ์ถœ๋ฐœํ•˜์—ฌ ๊ฐ ๋…ธ๋“œ๋ฅผ ๋Œ์•„๋‹ค๋‹ˆ๋ฉฐ ์–‘์„ ๋ชจ์œผ๋ ค ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๋…ธ๋“œ๋ฅผ ๋ฐฉ๋ฌธํ•  ๋•Œ ๋งˆ๋‹ค ํ•ด๋‹น ๋…ธ๋“œ์— ์žˆ๋˜ ์–‘๊ณผ ๋Š‘๋Œ€๊ฐ€ ๋‹น์‹ ์„ ๋”ฐ๋ผ์˜ค๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ, ๋Š‘๋Œ€๋Š” ์–‘์„ ์žก์•„๋จน์„ ๊ธฐํšŒ๋ฅผ ๋…ธ๋ฆฌ๊ณ  ์žˆ์œผ๋ฉฐ, ๋‹น์‹ ์ด ๋ชจ์€ ์–‘์˜ ์ˆ˜๋ณด๋‹ค ๋Š‘๋Œ€์˜ ์ˆ˜๊ฐ€ ๊ฐ™๊ฑฐ๋‚˜ ๋” ๋งŽ์•„์ง€๋ฉด ๋ฐ”๋กœ ๋ชจ๋“  ์–‘์„ ์žก์•„๋จน์–ด ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ์ค‘๊ฐ„์— ์–‘์ด ๋Š‘๋Œ€์—๊ฒŒ ์žก์•„๋จนํžˆ์ง€ ์•Š๋„๋ก ํ•˜๋ฉด์„œ ์ตœ๋Œ€ํ•œ ๋งŽ์€ ์ˆ˜์˜ ์–‘์„ ๋ชจ์•„์„œ ๋‹ค์‹œ ๋ฃจํŠธ ๋…ธ๋“œ๋กœ ๋Œ์•„์˜ค๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์œ„ ๊ทธ๋ฆผ์˜ ๊ฒฝ์šฐ(๋ฃจํŠธ ๋…ธ๋“œ์—๋Š” ํ•ญ์ƒ ์–‘์ด ์žˆ์Šต๋‹ˆ๋‹ค) 0๋ฒˆ ๋…ธ๋“œ(๋ฃจํŠธ ๋…ธ๋“œ)์—์„œ..

    [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]level.3 - ๋ฏธ๋กœ ํƒˆ์ถœ ๋ช…๋ น์–ด (C++)

    ๋ฌธ์ œ ์„ค๋ช… n x m ๊ฒฉ์ž ๋ฏธ๋กœ๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ๋ฏธ๋กœ์˜ (x, y)์—์„œ ์ถœ๋ฐœํ•ด (r, c)๋กœ ์ด๋™ํ•ด์„œ ํƒˆ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, ๋ฏธ๋กœ๋ฅผ ํƒˆ์ถœํ•˜๋Š” ์กฐ๊ฑด์ด ์„ธ ๊ฐ€์ง€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฉ์ž์˜ ๋ฐ”๊นฅ์œผ๋กœ๋Š” ๋‚˜๊ฐˆ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. (x, y)์—์„œ (r, c)๊นŒ์ง€ ์ด๋™ํ•˜๋Š” ๊ฑฐ๋ฆฌ๊ฐ€ ์ด k์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ, (x, y)์™€ (r, c)๊ฒฉ์ž๋ฅผ ํฌํ•จํ•ด, ๊ฐ™์€ ๊ฒฉ์ž๋ฅผ ๋‘ ๋ฒˆ ์ด์ƒ ๋ฐฉ๋ฌธํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค. ๋ฏธ๋กœ์—์„œ ํƒˆ์ถœํ•œ ๊ฒฝ๋กœ๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋‚˜ํƒ€๋ƒˆ์„ ๋•Œ, ๋ฌธ์ž์—ด์ด ์‚ฌ์ „ ์ˆœ์œผ๋กœ ๊ฐ€์žฅ ๋น ๋ฅธ ๊ฒฝ๋กœ๋กœ ํƒˆ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋™ ๊ฒฝ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฌธ์ž์—ด๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. l: ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ ์ด๋™ r: ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ ์ด๋™ u: ์œ„์ชฝ์œผ๋กœ ํ•œ ์นธ ์ด๋™ d: ์•„๋ž˜์ชฝ์œผ๋กœ ํ•œ ์นธ ์ด๋™ ์˜ˆ๋ฅผ ๋“ค์–ด, ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ, ์œ„๋กœ ํ•œ ์นธ, ์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ ์›€์ง์˜€๋‹ค๋ฉด, ..

    [BOJ 11657] ๋ฐฑ์ค€ ํƒ€์ž„๋จธ์‹  - C++ ํ’€์ด

    https://www.acmicpc.net/problem/11657 ๋ฌธ์ œ N๊ฐœ์˜ ๋„์‹œ๊ฐ€ ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•œ ๋„์‹œ์—์„œ ์ถœ๋ฐœํ•˜์—ฌ ๋‹ค๋ฅธ ๋„์‹œ์— ๋„์ฐฉํ•˜๋Š” ๋ฒ„์Šค๊ฐ€ M๊ฐœ ์žˆ๋‹ค. ๊ฐ ๋ฒ„์Šค๋Š” A, B, C๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š”๋ฐ, A๋Š” ์‹œ์ž‘๋„์‹œ, B๋Š” ๋„์ฐฉ๋„์‹œ, C๋Š” ๋ฒ„์Šค๋ฅผ ํƒ€๊ณ  ์ด๋™ํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด๋‹ค. ์‹œ๊ฐ„ C๊ฐ€ ์–‘์ˆ˜๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. C = 0์ธ ๊ฒฝ์šฐ๋Š” ์ˆœ๊ฐ„ ์ด๋™์„ ํ•˜๋Š” ๊ฒฝ์šฐ, C < 0์ธ ๊ฒฝ์šฐ๋Š” ํƒ€์ž„๋จธ์‹ ์œผ๋กœ ์‹œ๊ฐ„์„ ๋˜๋Œ์•„๊ฐ€๋Š” ๊ฒฝ์šฐ์ด๋‹ค. 1๋ฒˆ ๋„์‹œ์—์„œ ์ถœ๋ฐœํ•ด์„œ ๋‚˜๋จธ์ง€ ๋„์‹œ๋กœ ๊ฐ€๋Š” ๊ฐ€์žฅ ๋น ๋ฅธ ์‹œ๊ฐ„์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๋‚ด ์ฝ”๋“œ ๋ฒจ๋งŒํฌ๋“œ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ณต๋ถ€ํ•˜๊ณ  ์˜ˆ์ œ๋ฅผ ํ’€์–ด๋ดค๋‹ค. ์ฐธ๊ณ ๋กœ costs๋ฅผ long long์œผ๋กœ ๋‘์–ด์•ผํ•˜๋Š” ์ด์œ ๋Š” ๋ฒ„์Šค ๋…ธ์„ ์˜ ์ตœ๋Œ€ ๊ฐœ์ˆ˜ 500 -1 * ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ 6,000๋ฒˆ..