[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋งค์นญ์ ์ˆ˜ :: c++, 8๋ฒˆ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค, ํ’€์ด, ์ฝ”๋“œ
Algorithm ๋ฌธ์ œ/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 2021. 1. 29. 11:09

๋งค์นญ ์ ์ˆ˜ ๊ฑธ๋ฆฐ ์‹œ๊ฐ„ : 3์‹œ๊ฐ„ ์ด์ƒ ๋ฌธ์ œ ๋‚œ์ด๋„ โ˜…โ˜…โ˜…โ˜†โ˜† ๋ฌธ์ œ ์„ค๋ช… ํ”„๋ Œ์ฆˆ ๋Œ€ํ•™๊ต ์กฐ๊ต์˜€๋˜ ์ œ์ด์ง€๋Š” ํ—ˆ๋“œ๋ ›์ผ๋งŒ ์‹œํ‚ค๋Š” ๋„ค์˜ค ํ•™๊ณผ์žฅ๋‹˜์˜ ๋งˆ์ˆ˜์—์„œ ๋ฒ—์–ด๋‚˜, ์นด์นด์˜ค์— ์ž…์‚ฌํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ํ‰์†Œ์— ๊ด€์‹ฌ์žˆ์–ดํ•˜๋˜ ๊ฒ€์ƒ‰์— ๋งˆ์นจ ๊ฒฐ์›์ด ๋ฐœ์ƒํ•˜์—ฌ, ๊ฒ€์ƒ‰๊ฐœ๋ฐœํŒ€์— ํŽธ์ž…๋  ์ˆ˜ ์žˆ์—ˆ๊ณ , ๋Œ€๋ง์˜ ์ฒซ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ทธ ํ”„๋กœ์ ํŠธ๋Š” ๊ฒ€์ƒ‰์–ด์— ๊ฐ€์žฅ ์ž˜ ๋งž๋Š” ์›นํŽ˜์ด์ง€๋ฅผ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ์•„๋ž˜์™€ ๊ฐ™์€ ๊ทœ์น™์œผ๋กœ ๊ฒ€์ƒ‰์–ด์— ๋Œ€ํ•œ ์›นํŽ˜์ด์ง€์˜ ๋งค์นญ์ ์ˆ˜๋ฅผ ๊ณ„์‚ฐ ํ•˜๋Š” ๊ฒƒ์ด์—ˆ๋‹ค. ํ•œ ์›นํŽ˜์ด์ง€์— ๋Œ€ํ•ด์„œ ๊ธฐ๋ณธ์ ์ˆ˜, ์™ธ๋ถ€ ๋งํฌ ์ˆ˜, ๋งํฌ์ ์ˆ˜, ๊ทธ๋ฆฌ๊ณ  ๋งค์นญ์ ์ˆ˜๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•œ ์›นํŽ˜์ด์ง€์˜ ๊ธฐ๋ณธ์ ์ˆ˜๋Š” ํ•ด๋‹น ์›นํŽ˜์ด์ง€์˜ ํ…์ŠคํŠธ ์ค‘, ๊ฒ€์ƒ‰์–ด๊ฐ€ ๋“ฑ์žฅํ•˜๋Š” ํšŸ์ˆ˜์ด๋‹ค. (๋Œ€์†Œ๋ฌธ์ž ๋ฌด์‹œ) ํ•œ ์›นํŽ˜์ด์ง€์˜ ์™ธ๋ถ€ ๋งํฌ ์ˆ˜๋Š” ํ•ด๋‹น ์›นํŽ˜์ด์ง€์—์„œ ๋‹ค๋ฅธ ์™ธ๋ถ€ ํŽ˜์ด์ง€๋กœ ์—ฐ๊ฒฐ๋œ ๋ง..

[c++] BOJ 13023 :: ABCDE (ํ…Œ์ŠคํŠธ์ผ€์ด์Šค, ์ฝ”๋“œ)
Algorithm ๋ฌธ์ œ/BOJ 2020. 5. 6. 22:49

ABCDE https://www.acmicpc.net/problem/13023 ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 2 ์ดˆ 512 MB 6509 1863 1222 28.399% ๋ฌธ์ œ BOJ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์บ ํ”„์—๋Š” ์ด N๋ช…์ด ์ฐธ๊ฐ€ํ•˜๊ณ  ์žˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์€ 0๋ฒˆ๋ถ€ํ„ฐ N-1๋ฒˆ์œผ๋กœ ๋ฒˆํ˜ธ๊ฐ€ ๋งค๊ฒจ์ ธ ์žˆ๊ณ , ์ผ๋ถ€ ์‚ฌ๋žŒ๋“ค์€ ์นœ๊ตฌ์ด๋‹ค. ์˜ค๋Š˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์นœ๊ตฌ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง„ ์‚ฌ๋žŒ A, B, C, D, E๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ๊ตฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. A๋Š” B์™€ ์นœ๊ตฌ๋‹ค. B๋Š” C์™€ ์นœ๊ตฌ๋‹ค. C๋Š” D์™€ ์นœ๊ตฌ๋‹ค. D๋Š” E์™€ ์นœ๊ตฌ๋‹ค. ์œ„์™€ ๊ฐ™์€ ์นœ๊ตฌ ๊ด€๊ณ„๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ์•ˆํ•˜๋Š”์ง€ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์‚ฌ๋žŒ์˜ ์ˆ˜ N (5 ≤ N ≤ 2000)๊ณผ ์นœ๊ตฌ ๊ด€๊ณ„์˜ ์ˆ˜ M (1 ≤ M ≤ 2000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ M..

[c++] BOJ 1393๋ฒˆ :: ์Œํ•˜์ฒ ๋„ ๊ตฌ๊ตฌํŒ” (์ฝ”๋“œ, ์ฃผ์˜ํ•  ์ , ํ…Œ์ŠคํŠธ์ผ€์ด์Šค)
Algorithm ๋ฌธ์ œ/BOJ 2020. 5. 2. 09:51

์Œํ•˜์ฒ ๋„ ๊ตฌ๊ตฌํŒ” https://www.acmicpc.net/problem/1393 ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 2 ์ดˆ 128 MB 445 64 57 29.082% ๋ฌธ์ œ ์ตœ๋ฐฑ์ค€์€ ์Œํ•˜์ฒ ๋„ ๊ตฌ๊ตฌํŒ”์— ํƒ”๋‹ค. ๋ฌธ์ œ๋Š” ๊ตฌ๊ตฌํŒ”์˜ ๊ธฐ์žฅ์ธ ์กฐ๊ต ๊น€์žฌํ™์ด ๋ฐ˜์ฏค ๋ฏธ์ณ์„œ ์—ด์ฐจ๋ฅผ ๋ฉˆ์ถ”์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์ตœ๋ฐฑ์ค€์€ ๋‹ฌ๋ฆฌ๊ณ  ์žˆ๋Š” ์—ด์ฐจ์—์„œ ๋›ฐ์–ด๋‚ด๋ ค์•ผ ํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋›ฐ์–ด๋‚ด๋ฆด ๋•Œ ์ •๋ฅ˜์žฅ ๊นŒ์ง€ ๊ฑฐ๋ฆฌ๊ฐ€ ๋„ˆ๋ฌด ๋ฉ€๋ฉด ๋งˆ์ด ์•„ํ”Œ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ฒ ๋„๊ฐ€ ์ •๋ฅ˜์žฅ์— ๊ฐ€์žฅ ๋งŽ์ด ๊ทผ์ ‘ํ–ˆ์„ ๋•Œ ๋›ฐ์–ด๋‚ด๋ฆฌ๊ณ ์ž ํ•œ๋‹ค. ์–ด๋””์„œ ๋›ฐ์–ด๋‚ด๋ ค์•ผ ํ•˜๋Š”๊ฐ€? ์ž…๋ ฅ ์ฒซ์งธ ์ค„์—๋Š” ์ •๋ฅ˜์žฅ์˜ ์œ„์น˜ x y๊ฐ€ ์ฃผ์–ด์ง€๊ณ , ๋‘˜์งธ ์ค„์—๋Š” ํ˜„์žฌ ์—ด์ฐจ์˜ ์œ„์น˜ X Y์™€ ์—ด์ฐจ๊ฐ€ ์ดˆ๋งˆ๋‹ค ์ด๋™ํ•˜๋Š” x์ขŒํ‘œ y์ขŒํ‘œ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์—ด์ฐจ๋Š” ํ•ญ์ƒ ์ง์„ ์œผ๋กœ ์›€์ง์ธ๋‹ค. ์ฃผ์–ด์ง€๋Š”..

[c++] BOJ 1107๋ฒˆ :: ๋ฆฌ๋ชจ์ปจ (์ฝ”๋“œ, ํ…Œ์ŠคํŠธ์ผ€์ด์Šค)
Algorithm ๋ฌธ์ œ/BOJ 2020. 5. 2. 09:49

๋ฆฌ๋ชจ์ปจ https://www.acmicpc.net/problem/1107 ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 2 ์ดˆ 256 MB 29717 6775 4628 22.196% ๋ฌธ์ œ ์ˆ˜๋นˆ์ด๋Š” TV๋ฅผ ๋ณด๊ณ  ์žˆ๋‹ค. ์ˆ˜๋นˆ์ด๋Š” ์ฑ„๋„์„ ๋Œ๋ฆฌ๋ ค๊ณ  ํ–ˆ์ง€๋งŒ, ๋ฒ„ํŠผ์„ ๋„ˆ๋ฌด ์„ธ๊ฒŒ ๋ˆ„๋ฅด๋Š” ๋ฐ”๋žŒ์—, ์ผ๋ถ€ ์ˆซ์ž ๋ฒ„ํŠผ์ด ๊ณ ์žฅ๋‚ฌ๋‹ค. ๋ฆฌ๋ชจ์ปจ์—๋Š” ๋ฒ„ํŠผ์ด 0๋ถ€ํ„ฐ 9๊นŒ์ง€ ์ˆซ์ž, +์™€ -๊ฐ€ ์žˆ๋‹ค. +๋ฅผ ๋ˆ„๋ฅด๋ฉด ํ˜„์žฌ ๋ณด๊ณ ์žˆ๋Š” ์ฑ„๋„์—์„œ +1๋œ ์ฑ„๋„๋กœ ์ด๋™ํ•˜๊ณ , -๋ฅผ ๋ˆ„๋ฅด๋ฉด -1๋œ ์ฑ„๋„๋กœ ์ด๋™ํ•œ๋‹ค. ์ฑ„๋„ 0์—์„œ -๋ฅผ ๋ˆ„๋ฅธ ๊ฒฝ์šฐ์—๋Š” ์ฑ„๋„์ด ๋ณ€ํ•˜์ง€ ์•Š๊ณ , ์ฑ„๋„์€ ๋ฌดํ•œ๋Œ€ ๋งŒํผ ์žˆ๋‹ค. ์ˆ˜๋นˆ์ด๊ฐ€ ์ง€๊ธˆ ์ด๋™ํ•˜๋ ค๊ณ  ํ•˜๋Š” ์ฑ„๋„์€ N์ด๋‹ค. ์–ด๋–ค ๋ฒ„ํŠผ์ด ๊ณ ์žฅ๋‚ฌ๋Š”์ง€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ฑ„๋„ N์œผ๋กœ ์ด๋™ํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ฒ„ํŠผ์„ ์ตœ์†Œ ๋ช‡ ๋ฒˆ ๋ˆŒ๋Ÿฌ์•ผํ•˜๋Š”์ง€ ๊ตฌํ•˜๋Š” ํ”„..

[c++] BOJ 1309๋ฒˆ :: ๋™๋ฌผ์›
Algorithm ๋ฌธ์ œ/BOJ 2020. 4. 25. 09:41

๋™๋ฌผ์› ๋ฌธ์ œ ์–ด๋–ค ๋™๋ฌผ์›์— ๊ฐ€๋กœ๋กœ ๋‘์นธ ์„ธ๋กœ๋กœ N์นธ์ธ ์•„๋ž˜์™€ ๊ฐ™์€ ์šฐ๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ์ด ๋™๋ฌผ์›์—๋Š” ์‚ฌ์ž๋“ค์ด ์‚ด๊ณ  ์žˆ๋Š”๋ฐ ์‚ฌ์ž๋“ค์„ ์šฐ๋ฆฌ์— ๊ฐ€๋‘˜ ๋•Œ, ๊ฐ€๋กœ๋กœ๋„ ์„ธ๋กœ๋กœ๋„ ๋ถ™์–ด ์žˆ๊ฒŒ ๋ฐฐ์น˜ํ•  ์ˆ˜๋Š” ์—†๋‹ค. ์ด ๋™๋ฌผ์› ์กฐ๋ จ์‚ฌ๋Š” ์‚ฌ์ž๋“ค์˜ ๋ฐฐ์น˜ ๋ฌธ์ œ ๋•Œ๋ฌธ์— ๊ณจ๋จธ๋ฆฌ๋ฅผ ์•“๊ณ  ์žˆ๋‹ค. ๋™๋ฌผ์› ์กฐ๋ จ์‚ฌ์˜ ๋จธ๋ฆฌ๊ฐ€ ์•„ํ”„์ง€ ์•Š๋„๋ก ์šฐ๋ฆฌ๊ฐ€ 2*N ๋ฐฐ์—ด์— ์‚ฌ์ž๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ๋ช‡ ๊ฐ€์ง€์ธ์ง€๋ฅผ ์•Œ์•„๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด ์ฃผ๋„๋ก ํ•˜์ž. ์‚ฌ์ž๋ฅผ ํ•œ ๋งˆ๋ฆฌ๋„ ๋ฐฐ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๋„ ํ•˜๋‚˜์˜ ๊ฒฝ์šฐ์˜ ์ˆ˜๋กœ ์นœ๋‹ค๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์šฐ๋ฆฌ์˜ ํฌ๊ธฐ N(1≤N≤100,000)์ด ์ฃผ์–ด์ง„๋‹ค. ์ถœ๋ ฅ ์ฒซ์งธ ์ค„์— ์‚ฌ์ž๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ 9901๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์ถœ๋ ฅํ•˜์—ฌ๋ผ. ์˜ˆ์ œ ์ž…๋ ฅ 1 4 ์˜ˆ์ œ ์ถœ๋ ฅ 1 41 ๋‚˜์˜ ๋‹ต ์ฝ”๋“œ N ์ž…๋ ฅ ๋ฐ›๊ธฐ sum = 1+2..

[c++] BOJ 1149๋ฒˆ :: RGB๊ฑฐ๋ฆฌ
Algorithm ๋ฌธ์ œ/BOJ 2020. 4. 16. 21:31

RGB ๊ฑฐ๋ฆฌ ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 0.5 ์ดˆ (์ถ”๊ฐ€ ์‹œ๊ฐ„ ์—†์Œ) 128 MB 42269 19789 14882 47.682% ๋ฌธ์ œ RGB๊ฑฐ๋ฆฌ์—๋Š” ์ง‘์ด N๊ฐœ ์žˆ๋‹ค. ๊ฑฐ๋ฆฌ๋Š” ์„ ๋ถ„์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๊ณ , 1๋ฒˆ ์ง‘๋ถ€ํ„ฐ N๋ฒˆ ์ง‘์ด ์ˆœ์„œ๋Œ€๋กœ ์žˆ๋‹ค. ์ง‘์€ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘ ์ค‘ ํ•˜๋‚˜์˜ ์ƒ‰์œผ๋กœ ์น ํ•ด์•ผ ํ•œ๋‹ค. ๊ฐ๊ฐ์˜ ์ง‘์„ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์œผ๋กœ ์น ํ•˜๋Š” ๋น„์šฉ์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ์•„๋ž˜ ๊ทœ์น™์„ ๋งŒ์กฑํ•˜๋ฉด์„œ ๋ชจ๋“  ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์˜ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•ด๋ณด์ž. 1๋ฒˆ ์ง‘์˜ ์ƒ‰์€ 2๋ฒˆ ์ง‘์˜ ์ƒ‰๊ณผ ๊ฐ™์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. N๋ฒˆ ์ง‘์˜ ์ƒ‰์€ N-1๋ฒˆ ์ง‘์˜ ์ƒ‰๊ณผ ๊ฐ™์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. i(2 ≤ i ≤ N-1)๋ฒˆ ์ง‘์˜ ์ƒ‰์€ i-1๋ฒˆ, i+1๋ฒˆ ์ง‘์˜ ์ƒ‰๊ณผ ๊ฐ™์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— ์ง‘์˜ ์ˆ˜ N(2 ≤ N ≤ 1,000)์ด ..