๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ž๋ฃŒ๊ตฌ์กฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜6

[๋ฌธ์ œํ’€์ด] ๋ฐฑ์ค€ 5427 ๋ถˆ ๐Ÿ›Ž๏ธ ๋ฌธ์ œ  ๐Ÿ“ข ํ‹€๋ฆฐ ์ด์œ ๋ถˆ์ด ํผ์ง€๋Š” ๊ฐ„๊ฒฉ๊ณผ ์ƒ๊ทผ์ด๊ฐ€ ์›€์ง์ด๋Š” ๊ฐ„๊ฒฉ์ด ๊ฐ™์œผ๋ ค๋ฉด BFS๋ฅผ ๋Œ๋ฆด ๋•Œ ๋ถˆ์ด ๊ฐˆ ๊ณณ์„ ํƒ์ƒ‰ํ•˜๊ณ  que์— ๋„ฃ๋Š” depth์™€ ์ƒ๊ทผ์ด๊ฐ€ ์ด๋™ํ•˜๋Š” depth๊ฐ€ ๊ฐ™์•„์•ผ ํ•œ๋‹ค.๊ทธ ๋ถ€๋ถ„์„ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•ด์„œ ๊ณ„์† ๋ชจ๋“  ๋ฌธ์ œ๊ฐ€ "IMPOSSIBLE"์ด ๋‚˜์™”๋‹ค. ๐Ÿ˜€ ์ œ๋Œ€๋กœ ๋œ ์ฝ”๋“œ์ œ๋Œ€๋กœ ๋ฌธ์ œ๋ฅผ ํ’€๋ ค๋ฉด ๋ถˆ์„ ๋„ฃ๋Š” ํ ์‚ฌ์ด์ฆˆ๋งŒํผ๋งŒ ๋‹ค์Œ ์ขŒํ‘œ๋ฅผ ํƒ์ƒ‰ํ•˜๊ณ  ์ƒ๊ทผ์ด๋„ ์ƒ๊ทผ์ด์˜ ํ ์‚ฌ์ด์ฆˆ๋งŒํผ๋งŒ ๋‹ค์Œ ์ขŒํ‘œ๋ฅผ ํƒ์ƒ‰ํ•˜๊ณ  ์ด๋™์‹œ์ผœ์ฃผ์–ด ๋‘˜์ด ์›€์ง์ด๋Š” ๊ฐ„๊ฒฉ์„ ๋งž์ถฐ์ค˜์•ผ ํ•œ๋‹ค.์ฃผ์š” ์ฝ”๋“œ while (!sangQ.isEmpty()){ int firesize = fireQ.size(); int sangsize = sangQ.size(); for (int i = 0; i โš ๏ธ for๋ฌธ์— ํ์˜ size๋ฅผ.. 2025. 2. 14.
[๋ฌธ์ œํ’€์ด] ๋ฐฑ์ค€ 1697 ์ˆจ๋ฐ”๊ผญ์งˆ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์•ˆ ํ’€๋ฉด ๊นŒ๋จน๋Š” ๊ฒƒ ๊ฐ™๋‹ค.BFS/DFS๋Š” ๋‹ค๋ฅธ ์œ ํ˜•์— ๋น„ํ•ด ๋งŽ์ด ํ’€์–ด๋ดค์–ด์„œ ์†์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ์„๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐํ•œ ๋ฒˆ์— ์„ฑ๊ณตํ•˜์ง€ ๋ชปํ–ˆ๋‹ค. ^-^ ๋จธ์“ฑ  ๋ฐฑ์ค€ 1697 ์ˆจ๋ฐ”๊ผญ์งˆ ๋ฌธ์ œ์ˆ˜๋นˆ์ด๊ฐ€ ๋™์ƒ์„ ์ฐพ๊ธฐ ์œ„ํ•ด์„œ ํŠน์ • ์ด๋™ ์กฐ๊ฑด์— ๋งž์ถฐ ํƒ์ƒ‰ํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.์ „ํ˜•์ ์ธ BFS ๋ฌธ์ œ์ธ ๋“ฏ ํ•˜๋‹ค. X - 1X + 12 * X์ด๋™ ์กฐ๊ฑด์ด ๊ทœ์น™์ ์ด๋ฏ€๋กœ ํƒ์ƒ‰ ์œ„์น˜๊ฐ€ ๋ฐ˜๋ณต๋  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ฒ˜์Œ์— ๋ฐฉ๋ฌธ์ฒดํฌ๋ฅผ ๋นผ๋จน์€ ์ด์œ ๋Š”…..!๊ทธ๋ƒฅ ์ž˜๋ชป ์ƒ๊ฐํ–ˆ๋‹ค.์„ค๋ช…ํ•˜๊ธฐ๋„ ์–ด๋ ต๊ฒŒ ์ƒ๊ฐ์˜ ์˜ค๋ฅ˜๋ฅผ ๋ฒ”ํ•ด์„œ ์ ๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค..๊ฒฐ๋ก ์€ํŠน์ • ์ง€์ ์— ๋„์ฐฉํ–ˆ์„ ๋•Œ, ๊ทธ ์ง€์ ์—์„œ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜(3๊ฐ€์ง€ ์ด๋™ ์กฐ๊ฑด)๋Š” ํ•œ ๋ฒˆ์— ํ์— ๋„ฃ์–ด์„œ ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ๋‚˜์•„๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— ํ•œ ๋ฒˆ ๋ฐฉ๋ฌธํ•œ ๊ณณ์— ๋‹ค์‹œ ๋Œ์•„์˜ฌ ํ•„์š”๊ฐ€ ์—†๋‹ค.ํŠนํžˆ, ์ด ๋ฌธ์ œ๋Š” ์กฐ๊ฑด์ด X-1 .. 2025. 2. 13.
[๋ฌธ์ œ ํ’€์ด] SWEA 4615. ์žฌ๋ฏธ์žˆ๋Š” ์˜ค์…€๋กœ ๊ฒŒ์ž„ SWEA 4615. ์žฌ๋ฏธ์žˆ๋Š” ์˜ค์…€๋กœ ๊ฒŒ์ž„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์—์„œ 8๋ฐฉํ–ฅ์œผ๋กœ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒฝ์šฐ์™€ ๊ฐ„๋‹จํ•œ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์œ ํ˜•์„ ์—ฐ์Šตํ•ด๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋†“์นœ ์ 1. ๋ชจ๋“  ์นธ์ด ๊ฒ€์ •๋Œ, ํฐ์ƒ‰๋Œ ๋‘ ๊ฐ€์ง€๋กœ ์ฑ„์›Œ์ง€๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค. (0,1,2 ๋ผ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Œ)๋”ฐ๋ผ์„œ, ๋Œ์˜ ๊ฐœ์ˆ˜๋ฅผ ์…€ ๋•Œ if ๊ฒ€์ • -> ๊ฒ€์ •++ ์™€ else -> ํฐ์ƒ‰++ ๊ฐ€ ์•„๋‹Œ if ์™€ else if ๊ฐ€ ๋˜์–ด์•ผ ํ•œ๋‹ค.=> ์ƒํ™ฉ์— ์ฃผ์–ด์งˆ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ ๋†“์น˜์ง€ ๋ง๊ธฐ2. change ํ•จ์ˆ˜์—์„œ๋ฐ”๋กœ ๋‹ค์Œ ์นธ์˜ ๊ฐ’๋งŒ ๋ณด๊ณ  ์ƒ‰์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์ง€ ์•Š์Œ.๊ทธ ๋„ˆ๋จธ์˜ ์นธ๋“ค๊นŒ์ง€ ๋ณด๊ณ ๋‚˜์„œ์•ผ ์–ด๋””๊นŒ์ง€ ์ƒ‰์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Œ!! โญโญโญโญโญ์ฆ‰, ์กฐ๊ฑด์€ ๋„ˆ๋จธ์˜ ์นธ๋“ค์—๊ฒŒ ๊ฑธ์–ด์•ผ๊ฒ ์ง•...=> ๋„ˆ๋จธ์˜ ์นธ๋“ค์„ ๋ณด๋ฉด์„œ  (1) ๊ฐ™์€ ์ƒ‰์ธ์ง€ ํ™•์ธ (if๋ฌธ)   (2) ์–ด๋””๊นŒ์ง€์ธ.. 2024. 8. 12.
[๋ฌธ์ œ ํ’€์ด] ํ–‰๋ณตํ•œ ์ˆ˜์—ด์˜ ๊ฐœ์ˆ˜ (feat. ์ฝ”๋“œํŠธ๋ฆฌ ์กฐ๋ณ„๊ณผ์ œ : 4์ฃผ์ฐจ) ๋ฌธ์ œ : ์ฝ”๋“œํŠธ๋ฆฌ ํ–‰๋ณตํ•œ ์ˆ˜์—ด์˜ ๊ฐœ์ˆ˜ ๋‚œ์ด๋„๋Š” ์‰ฌ์›€์ด์ง€๋งŒ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ƒ๊ฐ์„ ๋ชปํ•ด์„œ ๊ฝค๋‚˜ ์—ฌ๋Ÿฌ๋ฒˆ ํ‹€๋ ธ๋‹ค..ใ…Žใ…Žํ‹€๋ฆฐ ์ด์œ ?ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๊ฐ€ ํ‹€๋ฆฐ ์›์ธ์„ ํŒŒ์•…ํ•˜๊ธฐ ๋ณด๋‹ค ํŠน์ • ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์กฐ๊ฑด๋ฌธ์„ ์ž‘์„ฑํ•จ. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•!ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๊ฐ€ ํ‹€๋ฆฐ ์›์ธ์„ ํŒŒ์•…ํ•˜์ž!! ์–ด๋ ค์› ๋˜ ์  & ์•Œ๊ฒŒ๋œ ์ !!๐Ÿฅฒ ์ˆ˜์—ด์ด ๊ฐ™์€ ์ˆ˜๊ฐ€ ๋ฐ˜๋ณต๋˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฐ์—ด์˜ ์•ž ๋’ค ๊ฐ’์„ ๋น„๊ตํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ–ˆ๋‹ค.๊ทธ๋Ÿฐ๋ฐ.. ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค ๊ฐ’์„ ๋„˜์–ด๊ฐ€๋ฉด ์•ˆ๋˜๋‹ˆ๊นŒ ํ•ด๋‹นํ•˜๋Š” ์กฐ๊ฑด์„ ๊ฑธ์—ˆ๋Š”๋ฐ.. ํ•ด๋‹น ์กฐ๊ฑด ๋•Œ๋ฌธ์— cnt ๊ฐ€ ์ฆ๊ฐ€ํ•˜์ง€ ์•Š๊ณ  ๋„˜์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ฒผ๋‹ค.๐Ÿ‘ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ํฌ๊ฒŒ ์žก์œผ๋ฉด ๋œ๋‹ค!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!์ง„์ฑ ... ๊ฐ„๋‹จํ•˜์ž–์•„..?.. 2024. 8. 11.
[์ด๋ก ] ๋ฐฐ์—ด (feat. ์ฝ”๋“œํŠธ๋ฆฌ ์กฐ๋ณ„๊ณผ์ œ : 3์ฃผ์ฐจ) ์ •์  ๋ฐฐ์—ด๋ฐฐ์—ด์˜ ์„ ์–ธ๊ณผ ๋™์‹œ์— ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•˜๋ฉฐ, ์„ ์–ธ ์ดํ›„์—๋Š” ํฌ๊ธฐ๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์—†๋‹ค.๋™์  ๋ฐฐ์—ด๊ธธ์ด๊ฐ€ ์ž์œ ์ž์žฌ๋กœ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด. ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์€ ๋งŒํผ๋งŒ ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ •์  ๋ฐฐ์—ด์˜ ๊ธฐ๋ณธ ์—ฐ์‚ฐ์‚ฝ์ž…๋ฐฐ์—ด์˜ ์•ž์ด๋‚˜ ๊ฐ€์šด๋ฐ์— ๊ฐ’์ด ์‚ฝ์ž…๋œ๋‹ค๋ฉด, ์ƒˆ๋กœ์šด ๊ฐ’์ด ๋“ค์–ด๊ฐˆ ์ž๋ฆฌ๋ฅผ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ ๊ฐ’๋“ค์˜ ์ž๋ฆฌ ์ด๋™์ด ํ•„์š”ํ•˜๋‹ค. ๋”ฐ๋ผ์„œ ์ผ๋ฐ˜์ ์ธ(์ตœ์•…์˜ ์ƒํ™ฉ์—์„œ์˜) ์‹œ๊ฐ„๋ณต์žก๋„๋Š” O(N)์ด๋‹ค.์ฆ‰, ๋‹ค๋ฅธ ๊ฐ’๋“ค์˜ ์ž๋ฆฌ ์ด๋™์ด ํ•„์š”ํ•˜์ง€ ์•Š์€ ์ƒํ™ฉ( ๋งจ ๋’ค์— ๊ฐ’์ด ์‚ฝ์ž…๋˜๋Š” ๊ฒฝ์šฐ)๋Š” ์‹œ๊ฐ„๋ณต์žก๋„๊ฐ€ O(1)์ด๋‹ค.์‚ญ์ œ์‚ฝ์ž…๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฐฐ์—ด์˜ ๋งจ ๋’ค์— ๊ฐ’์ด ์‚ญ์ œ๋œ๋‹ค๋ฉด ์‚ญ์ œ ํ›„ ๋‹ค๋ฅธ ๊ฐ’๋“ค์˜ ์ž๋ฆฌ ์ด๋™์ด ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค.๋ฐฐ์—ด์˜ ์•ž์ด๋‚˜ ๊ฐ€์šด๋ฐ์—์„œ ๊ฐ’์„ ์‚ญ์ œํ•œ๋‹ค๋ฉด ์‚ญ์ œ๋œ ๊ฐ’์˜ ๋นˆ ์ž๋ฆฌ๋ฅผ ์ฑ„์›Œ์•ผ ํ•˜๋ฏ€๋กœ ๋‚˜๋จธ์ง€ N-1 ๊ฐœ์˜ ๊ฐ’์ด ์ด๋™.. 2024. 8. 4.
[์ด๋ก ] ๊ณต๊ฐ„๋ณต์žก๋„ (feat. ์ฝ”๋“œํŠธ๋ฆฌ ์กฐ๋ณ„๊ณผ์ œ : 1์ฃผ์ฐจ) ๊ณต๊ฐ„๋ณต์žก๋„๋ž€?๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ (์ฝ”๋“œ๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์–ผ๋งˆ๋‚˜ ์ฐจ์ง€ํ•˜๊ณ  ์žˆ๋Š”๊ฐ€?)๊ณต๊ฐ„๋ณต์žก๋„๊ฐ€ ์™œ ์ค‘์š”ํ•œ๊ฐ€?์ปดํ“จํ„ฐ์˜ ๋ฉ”๋ชจ๋ฆฌ๋Š” ํ•œ์ •๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์ ์„์ˆ˜๋ก ํšจ์œจ์ด ์ข‹์Œ.๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ์„ ๋ฏธ๋ฆฌ ๊ณ„์‚ฐํ•ด๋ณด๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ์„ ๋„˜๋Š” ์ฝ”๋“œ์ธ์ง€ ํ™•์ธ ๊ฐ€๋Šฅํ•จ. ๊ณต๊ฐ„๋ณต์žก๋„ ๊ณ„์‚ฐ๋ฉ”๋ชจ๋ฆฌ ๊ณ„์‚ฐ ๊ธฐ์ค€- ๋ฉ”๋ชจ๋ฆฌ ๊ณ„์‚ฐ ๊ธฐ์ค€์€ ๋ณดํ†ต C++ ๊ธฐ์ค€์ž๋ฃŒํ˜•ํฌ๊ธฐint4bytechar1bytedouble8byteshort2byte ๊ณ„์‚ฐ ๋ฐฉ๋ฒ•๊ฐ’์ด ์ƒ์„ฑ ํ›„ ์—†์–ด์ง€๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์ŒํŠน์ • ์‹œ์ ์— ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฐจ์ง€ํ•˜๊ณ  ์žˆ๋Š” ๊ฐ’๋“ค์ด ๊ฐ€์žฅ ๋งŽ์€ ๊ฒฝ์šฐ๋ฅผ ๊ณ ๋ คํ•จ int a[2์ฒœ๋งŒ] : 80MBint a[2๋ฐฑ๋งŒ] : 80 / 10 = 8MBchar a[2์ฒœ๋งŒ] : 80 / 4 = 20MBdouble a[2์ฒœ๋งŒ] : 80 * 2 = 160MB-- ๊ณต๊ฐ„๋ณต์žก๋„ ๊ณ„์‚ฐ ์˜ˆ์‹œ 1.. 2024. 7. 19.