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

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ88

[Java] BOJ 1259 ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜ ๋ฌธ์ œ ๋ฌธ์ œ ๋งํฌ ์ˆ˜์˜ ์ˆซ์ž๋“ค์„ ๋’ค์—์„œ๋ถ€ํ„ฐ ์ฝ์–ด๋„ ๊ฐ™๋‹ค๋ฉด ๊ทธ ์ˆ˜๋Š” ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 121, 12421 ๋“ฑ์€ ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๋‹ค. ์ด๋ฒˆ ๋ฌธ์ œ์—์„œ๋Š” ๋ฌด์˜๋ฏธํ•œ 0์ด ์•ž์— ์˜ฌ ์ˆ˜ ์—†๋‹ค. (010์€ ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๊ฐ€ ๋  ์ˆ˜ ์—†๋‹ค.) ์ž…๋ ฅ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์œผ๋ฉฐ, ๊ฐ ์ค„๋งˆ๋‹ค 1 ์ด์ƒ 99999 ์ดํ•˜์˜ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ž…๋ ฅ์˜ ๋งˆ์ง€๋ง‰ ์ค„์—๋Š” 0์ด ์ฃผ์–ด์ง€๋ฉฐ, ์ด ์ค„์€ ๋ฌธ์ œ์— ํฌํ•จ๋˜์ง€ ์•Š๋Š”๋‹ค.  ๊ฐ ์ค„๋งˆ๋‹ค ์ฃผ์–ด์ง„ ์ˆ˜๊ฐ€ ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๋ฉด 'yes', ์•„๋‹ˆ๋ฉด 'no'๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.์•„์ด๋””์–ด๋“ค์–ด์˜จ ๋ฌธ์ž์—ด ๊ธธ์ด๋ฅผ ๊ณ„์‚ฐํ•ด์„œ ์•ž ๋’ค ๊ธ€์ž๊ฐ€ ๊ฐ™์€์ง€ ๋น„๊ตํ•ด์„œ ๊ฐ™์œผ๋ฉด ๊ณ„์†ํ•˜๊ณ  ๋‹ค๋ฅด๋ฉด no๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.์•ž ๋’ค๋ฅผ ๋‹ค ๋น„๊ตํ–ˆ์œผ๋ฉด yes๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๊ฐ€ ํ™€์ˆ˜์ด๋“  ์ง์ˆ˜์ด๋“  ์ง์ˆ˜๋ฉด ์•ž ๋’ค ๋‹ค ๋น„๊ตํ•˜๋ฉด ๋˜๊ณ  ํ™€์ˆ˜์—ฌ๋„ ๊ฐ€์šด๋ฐ ์ˆ˜๋Š” .. 2024. 7. 11.
[Java] BOJ 15829 Hashing ๋ฌธ์ œ ๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/15829r์˜ ๊ฐ’์€ 26๋ณด๋‹ค ํฐ ์†Œ์ˆ˜์ธ 31๋กœ ํ•˜๊ณ  M์˜ ๊ฐ’์€ 1234567891๋กœ ํ•œ๋‹ค.์œ„ ์‹์„ ํ†ตํ•ด ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด์˜ ํ•ด์‹œ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜์‹œ์˜ค.์ฒซ ์ค„์—๋Š” ๋ฌธ์ž์—ด์˜ ๊ธธ์ด L์ด ๋“ค์–ด์˜จ๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ์˜๋ฌธ ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์ด ๋“ค์–ด์˜จ๋‹ค.์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง€๋Š” ๋ฌธ์ž์—ด์€ ๋ชจ๋‘ ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ํ•ด์‹œํ•จ์ˆ˜์™€ ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด์„ ์‚ฌ์šฉํ•ด ๊ณ„์‚ฐํ•œ ํ•ด์‹œ ๊ฐ’์„ ์ •์ˆ˜๋กœ ์ถœ๋ ฅํ•œ๋‹ค.์•„์ด๋””์–ด์˜์–ด์˜ ์†Œ๋ฌธ์ž๋ฅผ ์•„์Šคํ‚ค์ฝ”๋“œ๋กœ ๋ณ€ํ™˜์‹œ์ผœ ํ•ด๋‹น ์•„์Šคํ‚ค์ฝ”๋“œ์— ํ•ด์‹œ ๊ฐ’์„ ๋งค์นญ์‹œ์ผœ์„œ ์•„์Šคํ‚ค์ฝ”๋“œ๋ฅผ key๊ฐ’, ํ•ด์‹œ ๊ฐ’์„ value๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” HashMap์„ ์‚ฌ์šฉํ•˜๋ฉด ๋˜๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๊ฒช์€ ์‹œํ–‰์ฐฉ์˜ค์ฒ˜์Œ์— 50์ ์ด ๋‚˜์™”๋‹ค... ๋จธ๊ฐ€ ๋ฌธ์ œ์ธ๊ฐ€ .. 2024. 7. 11.
[Java] BOJ 2798 ๋ธ”๋ž™์žญ ๋ฌธ์ œ ๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/2798N์žฅ์˜ ์นด๋“œ์— ์จ์ ธ ์žˆ๋Š” ์ˆซ์ž๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, M์„ ๋„˜์ง€ ์•Š์œผ๋ฉด์„œ M์— ์ตœ๋Œ€ํ•œ ๊ฐ€๊นŒ์šด ์นด๋“œ 3์žฅ์˜ ํ•ฉ์„ ๊ตฌํ•ด ์ถœ๋ ฅํ•˜์‹œ์˜ค.์ฒซ์งธ ์ค„์— ์นด๋“œ์˜ ๊ฐœ์ˆ˜ N(3 ≤ N ≤ 100)๊ณผ M(10 ≤ M ≤ 300,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ์นด๋“œ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉฐ, ์ด ๊ฐ’์€ 100,000์„ ๋„˜์ง€ ์•Š๋Š” ์–‘์˜ ์ •์ˆ˜์ด๋‹ค. ํ•ฉ์ด M์„ ๋„˜์ง€ ์•Š๋Š” ์นด๋“œ 3์žฅ์„ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ๋งŒ ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. ์ฒซ์งธ ์ค„์— M์„ ๋„˜์ง€ ์•Š์œผ๋ฉด์„œ M์— ์ตœ๋Œ€ํ•œ ๊ฐ€๊นŒ์šด ์นด๋“œ 3์žฅ์˜ ํ•ฉ์„ ์ถœ๋ ฅํ•œ๋‹ค. ์•„์ด๋””์–ด์นด๋“œ ์„ธ์žฅ์˜ ํ•ฉ์„ ๊ตฌํ–ˆ์„ ๋•Œ, ๋ฐฐ์—ด์— ์ €์žฅํ•˜๋Š”๋ฐ, ๊ทธ ํ•ฉ์ด ๊ฒน์น  ์ˆ˜๋„ ์žˆ์œผ๋‹ˆ ์ค‘๋ณต ์ˆซ์ž๊ฐ€ ๋“ค์–ด๊ฐ€์ง€ ์•Š๋Š” set์„ ํ™œ์šฉํ•ด์•ผ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.์นด๋“œ ์„ธ์žฅ์˜ ์กฐ.. 2024. 7. 10.
[Java] BOJ 2292 ๋ฒŒ์ง‘ ๋ฌธ์ œ ๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/2292์œก๊ฐํ˜•์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฒŒ์ง‘์ด ์žˆ์œผ๋ฉฐ ์ค‘์•™์˜ ๋ฐฉ 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์„œ ์ด์›ƒํ•˜๋Š” ๋ฐฉ์— ๋Œ์•„๊ฐ€๋ฉด์„œ 1์”ฉ ์ฆ๊ฐ€ํ•˜๋Š” ๋ฒˆํ˜ธ๋ฅผ ์ฃผ์†Œ๋กœ ๋งค๊ธธ ์ˆ˜ ์žˆ๋‹ค. ์ˆซ์ž N์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋ฒŒ์ง‘์˜ ์ค‘์•™ 1์—์„œ N๋ฒˆ ๋ฐฉ๊นŒ์ง€ ์ตœ์†Œ ๊ฐœ์ˆ˜์˜ ๋ฐฉ์„ ์ง€๋‚˜์„œ ๊ฐˆ ๋•Œ ๋ช‡ ๊ฐœ์˜ ๋ฐฉ์„ ์ง€๋‚˜๊ฐ€๋Š”์ง€(์‹œ์ž‘๊ณผ ๋์„ ํฌํ•จํ•˜์—ฌ)๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.  ์˜ˆ๋ฅผ ๋“ค๋ฉด, 13๊นŒ์ง€๋Š” 3๊ฐœ, 58๊นŒ์ง€๋Š” 5๊ฐœ๋ฅผ ์ง€๋‚œ๋‹ค. ์ฒซ์งธ ์ค„์— N(1 ≤ N ≤ 1,000,000,000)์ด ์ฃผ์–ด์ง„๋‹ค. ์•„์ด๋””์–ดํ•œ ๋‘˜๋ ˆ๋‹น ์œก๊ฐํ˜•์ด 6์˜ ๋ฐฐ์ˆ˜๋กœ ๋Š˜์–ด๋‚˜๋ฏ€๋กœ ์ด๋ฅผ ํ™œ์šฉํ•ด์„œ ํ•œ ๋‘˜๋ ˆ์˜ ์ตœ๋Œ€ ๋ฐฉ ๋ฒˆํ˜ธ๋ฅผ ๊ณ„์‚ฐํ•ด, ๊ทธ ๋ฐฉ๋ฒˆํ˜ธ๋ณด๋‹ค ์ž‘์œผ๋ฉด .while๋ฌธ์„ ๊ทธ๋งŒ๋Œ๋ฆฌ๊ณ  ํฌ๋ฉด ์นด์šดํŠธ + 1์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™.. 2024. 7. 10.
[Java] BOJ 2231 ๋ถ„ํ•ดํ•ฉ ๋ฌธ์ œ ๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/2231 ์–ด๋–ค ์ž์—ฐ์ˆ˜ M์˜ ๋ถ„ํ•ดํ•ฉ์ด N์ธ ๊ฒฝ์šฐ, M์„ N์˜ ์ƒ์„ฑ์ž๋ผ ํ•œ๋‹ค.  ์˜ˆ๋ฅผ ๋“ค์–ด, 245์˜ ๋ถ„ํ•ดํ•ฉ์€ 256(=245+2+4+5)์ด ๋œ๋‹ค. ๋”ฐ๋ผ์„œ 245๋Š” 256์˜ ์ƒ์„ฑ์ž๊ฐ€ ๋œ๋‹ค.  ๋ฌผ๋ก , ์–ด๋–ค ์ž์—ฐ์ˆ˜์˜ ๊ฒฝ์šฐ์—๋Š” ์ƒ์„ฑ์ž๊ฐ€ ์—†์„ ์ˆ˜๋„ ์žˆ๋‹ค. ๋ฐ˜๋Œ€๋กœ, ์ƒ์„ฑ์ž๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ์ธ ์ž์—ฐ์ˆ˜๋„ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ์ฒซ์งธ ์ค„์— ์ž์—ฐ์ˆ˜ N(1 ≤ N ≤ 1,000,000)์ด ์ฃผ์–ด์ง„๋‹ค. ์ฒซ์งธ ์ค„์— ๋‹ต์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ƒ์„ฑ์ž๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” 0์„ ์ถœ๋ ฅํ•œ๋‹ค. ์•„์ด๋””์–ด while๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜๋ˆ„๋Š” ์ˆ˜๊ฐ€ 0์ด ๋ ๋•Œ๊นŒ์ง€ 10์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค10์œผ๋กœ ๋‚˜๋ˆŒ๋•Œ๋งˆ๋‹ค ๋‚˜์˜ค๋Š” ๋‚˜๋จธ์ง€๊ฐ€ ๊ฐ ์ž๋ฆฌ์˜ ์ˆซ์ž์ด๊ธฐ ๋•Œ๋ฌธ์— ์›๋ž˜ ์ž์—ฐ์ˆ˜์— ๊ทธ ์ˆซ์ž๋ฅผ ๋”ํ•ด์„œ M๊ณผ ๋น„๊ตํ•˜๋ฉด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๊ฒช.. 2024. 7. 10.
[Java] BOJ 1978 ์†Œ์ˆ˜ ์ฐพ๊ธฐ ๋ฌธ์ œ ๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/1978์ฒซ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. N์€ 100์ดํ•˜์ด๋‹ค. ๋‹ค์Œ์œผ๋กœ N๊ฐœ์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋Š”๋ฐ ์ˆ˜๋Š” 1,000 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.์ฃผ์–ด์ง„ ์ˆ˜ N๊ฐœ ์ค‘์—์„œ ์†Œ์ˆ˜๊ฐ€ ๋ช‡ ๊ฐœ์ธ์ง€ ์ฐพ์•„์„œ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.์•„์ด๋””์–ด์†Œ์ˆ˜ ์ฐพ๊ธฐ๋ฅผ ๋ณด์ž๋งˆ์ž ์—๋ผํ† ์Šคํ…Œ๋„ค์Šค์˜ ์ฒด๊ฐ€ ์ƒ๊ฐ์ด ๋‚ฌ๋‹ค. (์‚ฌ์‹ค ํฌ๊ธฐ๊ฐ€ ์ž‘์•„์„œ ํ•˜๋‚˜ํ•˜๋‚˜ ์ฐพ์•„๋„ ์‹œ๊ฐ„์ดˆ๊ณผ ์•ˆ๋‚ฌ์„ ๊ฒƒ ๊ฐ™์ง€๋งŒ ๊ทธ๋ž˜๋„ ์ข€ ๋” ํšจ์œจ์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€์–ด๋ณด๊ณ ์ž ์—๋ผํ† ์Šคํ…Œ๋„ค์Šค์˜ ์ฒด๋กœ ํ’€๊ธฐ๋กœ ๊ฒฐ์‹ฌํ–ˆ๋‹ค. ใ…Žใ…Ž)๊ฒช์€ ์‹œํ–‰์ฐฉ์˜ค์ฒ˜์Œ์— ๋ฌธ์ œ๋ณด์ž๋งˆ์ž ์—๋ผํ† ์Šคํ…Œ๋„ค์Šค์˜ ์ฒด๋ฅผ ์ด์šฉํ•˜์—ฌ ํ’€์ž๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ๋ง‰์ƒ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ๋ณด๋‹ˆ ์›๋ฆฌ๊ฐ€ ๊ธฐ์–ต์ด ์•ˆ๋‚˜์„œ ์กฐ๊ธˆ ๊ณ ์ƒํ–ˆ๋‹ค... ์•ž์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ด๋ฆ„๋งŒ ๊ธฐ์–ตํ•˜์ง€๋ง๊ณ  ๋ฐฉ๋ฒ•๊นŒ์ง€ ์ œ๋Œ€๋กœ ์ˆ™์ง€ํ•˜๋„๋ก ๊ณต๋ถ€.. 2024. 7. 9.