[python] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ•ด๊ฒฐ ์ „๋žต 1๊ถŒ :: ํŒฌ๋ฏธํŒ… (ID: FANMEETING)
Algorithm ๋ฌธ์ œ/์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ•ด๊ฒฐ์ „๋žต 2020. 3. 16. 13:17

๋ฌธ์ œ ๊ฐ€์žฅ ๋ฉค๋ฒ„๊ฐ€ ๋งŽ์€ ์•„์ด๋Œ ๊ทธ๋ฃน์œผ๋กœ ๊ธฐ๋„ค์Šค ๋ถ์— ์˜ฌ๋ผ ์žˆ๋Š” ํ˜ผ์„ฑ ํŒ ๊ทธ๋ฃน ํ•˜์ดํผ์‹œ๋‹ˆ์–ด๊ฐ€ ๋ฐ๋ท” 10์ฃผ๋…„ ๊ธฐ๋… ํŒฌ ๋ฏธํŒ…์„ ๊ฐœ์ตœํ–ˆ์Šต๋‹ˆ๋‹ค. ํŒฌ ๋ฏธํŒ…์˜ ํ•œ ์ˆœ์„œ๋กœ, ๋ฉค๋ฒ„๋“ค๊ณผ ์ฐธ๊ฐ€ํ•œ ํŒฌ๋“ค์ด ํฌ์˜น์„ ํ•˜๋Š” ํ–‰์‚ฌ๋ฅผ ๊ฐ–๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ดํผ์‹œ๋‹ˆ์–ด์˜ ๋ฉค๋ฒ„๋“ค์€ ์šฐ์„  ๋ฌด๋Œ€์— ์ผ๋ ฌ๋กœ ์„ญ๋‹ˆ๋‹ค. ํŒฌ ๋ฏธํŒ…์— ์ฐธ๊ฐ€ํ•œ M๋ช…์˜ ํŒฌ๋“ค์€ ์ค„์„ ์„œ์„œ ๋งจ ์˜ค๋ฅธ์ชฝ ๋ฉค๋ฒ„์—์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด ํ•œ ๋ช…์”ฉ ์™ผ์ชฝ์œผ๋กœ ์›€์ง์ด๋ฉฐ ๋ฉค๋ฒ„๋“ค๊ณผ ํ•˜๋‚˜์”ฉ ํฌ์˜น์„ ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ํŒฌ๋“ค์€ ๋™์‹œ์— ํ•œ ๋ช…์”ฉ ์›€์ง์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ๊ทธ๋ฆผ์€ ํ–‰์‚ฌ ๊ณผ์ •์˜ ์ผ๋ถ€๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. a~d๋Š” ๋„ค ๋ช…์˜ ํ•˜์ดํผ์‹œ๋‹ˆ์–ด ๋ฉค๋ฒ„๋“ค์ด๊ณ , 0~5๋Š” ์—ฌ์„ฏ ๋ช…์˜ ํŒฌ๋“ค์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ•˜์ดํผ์‹œ๋‹ˆ์–ด์˜ ๋‚จ์„ฑ ๋ฉค๋ฒ„๋“ค์ด ๋‚จ์„ฑ ํŒฌ๊ณผ ํฌ์˜นํ•˜๊ธฐ๊ฐ€ ๋ฏผ๋งํ•˜๋‹ค๊ณ  ์—ฌ๊ฒจ์„œ, ๋‚จ์„ฑ ํŒฌ๊ณผ๋Š” ํฌ์˜น ๋Œ€์‹  ์•…์ˆ˜๋ฅผ ํ•˜๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ค„์„ ์„  ๋ฉค๋ฒ„๋“ค๊ณผ ํŒฌ๋“ค..

[python] ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ ๊ตฌํ˜„ํ•˜๊ธฐ (segment tree) - ์ตœ์†Œ๊ฐ’ ๊ตฌํ•˜๊ธฐ
์ปดํ“จํ„ฐ๊ณผํ•™ (CS)/Algorithm 2020. 3. 15. 22:39

์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ https://www.acmicpc.net/blog/view/9 ๋ฐฑ์ค€๋‹˜ ๊ธ€ ๋ฐฐ์—ด ํฌ๊ธฐ ๊ฒฐ์ • ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ C++์˜ ๊ฒฝ์šฐ, vector ์ž๋ฃŒํ˜•์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ python์œผ๋กœ ๊ตฌํ˜„ํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๊ฐ€ ์–ผ๋งˆ๋‚˜ ๋˜์–ด์•ผ ํ• ์ง€ ๊ฐ€๋Š ํ•˜๊ธฐ ์œ„ํ•ด ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •ํ•ด๋ณด์ž. 2์˜ ์ œ๊ณฑ ์ˆ˜๊ฐ€ ๋ฆฌํ”„ ๋…ธ๋“œ์˜ ์ˆ˜(n)๋กœ ์ฃผ์–ด์ง„๋‹ค๋ฉด ( ๋ถ„์„ํ•ด์•ผํ•  data ๊ฐฏ์ˆ˜๊ฐ€ 2์˜ ์ œ๊ณฑ ์ˆ˜๋ผ๋ฉด ) ๊ฐ ๋‹จ๊ณ„๋งˆ๋‹ค 1/2์”ฉ ์ค„์–ด๋‚˜๊ฐ€๋ฏ€๋กœ log(n)์ด ํ•„์š”ํ•œ ์ด ๋‹จ๊ณ„(ํ™”์‚ดํ‘œ)๊ฐ€ ๋˜๊ณ  ์ „์ฒด ์ธต์˜ ๊ฐฏ์ˆ˜, ์ฆ‰ ๋†’์ด(h)๋Š” log(n)+1์ด ๋œ๋‹ค. ์ตœ์ƒ์œ„ ๋…ธ๋“œ๋ถ€ํ„ฐ 2^(0)๊ฐœ์˜ ๋…ธ๋“œ๋กœ ์‹œ์ž‘ํ•˜์—ฌ ์ธต์ด ์ฆ๊ฐ€ํ•  ์ˆ˜๋ก 2์˜ ์ง€์ˆ˜ ๋˜ํ•œ ์ฆ๊ฐ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฝ‰์ฐฌ ์ด์ค‘ ํŠธ๋ฆฌ(full binary tree)์˜ ์ด ๋…ธ๋“œ ..

[python]๋ฐฑ์ค€ 17836๋ฒˆ : ๊ณต์ฃผ๋‹˜์„ ๊ตฌํ•ด๋ผ!
Algorithm ๋ฌธ์ œ/BOJ 2020. 3. 13. 14:42

๊ณต์ฃผ๋‹˜์„ ๊ตฌํ•ด๋ผ! ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 1 ์ดˆ 256 MB 2397 551 418 22.012% ๋ฌธ์ œ ์šฉ์‚ฌ๋Š” ๋งˆ์™•์ด ์ˆจ๊ฒจ๋†“์€ ๊ณต์ฃผ๋‹˜์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด (N, M) ํฌ๊ธฐ์˜ ์„ฑ ์ž…๊ตฌ (1,1)์œผ๋กœ ๋“ค์–ด์™”๋‹ค. ๋งˆ์™•์€ ์šฉ์‚ฌ๊ฐ€ ๊ณต์ฃผ๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๋„๋ก ์„ฑ์˜ ์—ฌ๋Ÿฌ ๊ตฐ๋ฐ ๋งˆ๋ฒ• ๋ฒฝ์„ ์„ธ์›Œ๋†“์•˜๋‹ค. ์šฉ์‚ฌ๋Š” ํ˜„์žฌ์˜ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ฌด๊ธฐ๋กœ๋Š” ๋งˆ๋ฒ• ๋ฒฝ์„ ํ†ต๊ณผํ•  ์ˆ˜ ์—†์œผ๋ฉฐ, ๋งˆ๋ฒ• ๋ฒฝ์„ ํ”ผํ•ด (N, M) ์œ„์น˜์— ์žˆ๋Š” ๊ณต์ฃผ๋‹˜์„ ๊ตฌ์ถœํ•ด์•ผ๋งŒ ํ•œ๋‹ค. ๋งˆ์™•์€ ์šฉ์‚ฌ๊ฐ€ ๊ดด๋กญํžˆ๊ธฐ ์œ„ํ•ด ๊ณต์ฃผ์—๊ฒŒ ์ €์ฃผ๋ฅผ ๊ฑธ์—ˆ๋‹ค. ์ €์ฃผ์— ๊ฑธ๋ฆฐ ๊ณต์ฃผ๋Š” T์‹œ๊ฐ„ ์ด๋‚ด๋กœ ์šฉ์‚ฌ๋ฅผ ๋งŒ๋‚˜์ง€ ๋ชปํ•œ๋‹ค๋ฉด ์˜์›ํžˆ ๋Œ๋กœ ๋ณ€ํ•˜๊ฒŒ ๋œ๋‹ค. ๊ณต์ฃผ๋‹˜์„ ๊ตฌ์ถœํ•˜๊ณ  ํ”„๋Ÿฌํฌ์ฆˆ๋ฅผ ๋ฐ˜๋“œ์‹œ ํ•˜๊ณ  ์‹ถ์€ ์šฉ์‚ฌ๋Š” T์‹œ๊ฐ„ ๋‚ด์— ๋ฐ˜๋“œ์‹œ ๊ณต์ฃผ๋‹˜์ด ์žˆ๋Š” ๊ณณ์œผ๋กœ ๋„๋‹ฌํ•ด์•ผ ํ•œ๋‹ค. ์šฉ์‚ฌ๋Š” ํ•œ ์นธ์„ ์ด๋™..

[python]๋ฐฑ์ค€ 17827๋ฒˆ: ๋‹ฌํŒฝ์ด ๋ฆฌ์ŠคํŠธ
Algorithm ๋ฌธ์ œ/BOJ 2020. 3. 13. 14:41

๋‹ฌํŒฝ์ด ๋ฆฌ์ŠคํŠธ ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 1 ์ดˆ 256 MB 597 219 175 40.984% ๋ฌธ์ œ ์˜์ง„์ด๋Š” ๋‹ฌํŒฝ์ด๋ฅผ ์ข‹์•„ํ•œ๋‹ค. ๋‹ฌํŒฝ์ด๋ฅผ ๋„ˆ๋ฌด๋„ˆ๋ฌด ์ข‹์•„ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํŠน์ •ํ•œ ๋ชจ์–‘์˜ ๋‹จ๋ฐฉํ–ฅ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ์— ๋‹ฌํŒฝ์ด ๋ฆฌ์ŠคํŠธ๋ผ๋Š” ์ด๋ฆ„์„ ๋ถ™์—ฌ์ฃผ์—ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์„ ํ˜• ๋‹จ๋ฐฉํ–ฅ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ์˜ ๊ฐ ๋…ธ๋“œ ๋ฒˆํ˜ธ๋ฅผ ์—ฐ๊ฒฐ๋œ ์ˆœ์„œ๋Œ€๋กœ 1, 2, ..., N์ด๋ผ ํ•˜์ž. ์ด๋•Œ N๋ฒˆ ๋…ธ๋“œ๋Š” ์•„๋ฌด ๋…ธ๋“œ๋„ ๊ฐ€๋ฆฌํ‚ค์ง€ ์•Š๋Š”๋ฐ, ์—ฌ๊ธฐ์„œ N๋ฒˆ ๋…ธ๋“œ๊ฐ€ 1๋ฒˆ ๋…ธ๋“œ๋ฅผ ์ œ์™ธํ•œ ์ž„์˜์˜ ๋…ธ๋“œ๋ฅผ ๊ฐ€๋ฆฌ์ผœ ์‚ฌ์ดํด์„ ์ด๋ฃจ๊ฒŒ ๋˜๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ๋‹ฌํŒฝ์ด ๋ฆฌ์ŠคํŠธ๋ผ๊ณ  ํ•œ๋‹ค. ๋‹ฌํŒฝ์ด ๋ฆฌ์ŠคํŠธ๋Š” ๊ฐ ๋…ธ๋“œ๋‹น ํ•˜๋‚˜์˜ ์ •์ˆ˜๋ฅผ ์ €์žฅํ•œ๋‹ค. ์ฆ‰, ๋‹ฌํŒฝ์ด ๋ฆฌ์ŠคํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ƒ๊ธด ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ์ด๋‹ค. ๋…ธ๋“œ ์•ˆ์˜ ์ˆ˜๋Š” ์ €์žฅ๋œ ๊ฐ’์„ ๋œปํ•œ๋‹ค. "๋‹ฌํŒฝ์•„ ๋‹ฌํŒฝ์•„ 1๋ฒˆ ๋…ธ๋“œ๋ถ€ํ„ฐ ํ•œ ์นธ์”ฉ..

[python]๋ฐฑ์ค€ 1699๋ฒˆ : ์ œ๊ณฑ์ˆ˜์˜ ํ•ฉ
Algorithm ๋ฌธ์ œ/BOJ 2020. 3. 6. 22:31

์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 2 ์ดˆ 128 MB 20321 8384 6181 41.113% ๋ฌธ์ œ ์–ด๋–ค ์ž์—ฐ์ˆ˜ N์€ ๊ทธ๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ œ๊ณฑ์ˆ˜๋“ค์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 11=32+12+12(3๊ฐœ ํ•ญ)์ด๋‹ค. ์ด๋Ÿฐ ํ‘œํ˜„๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ๋  ์ˆ˜ ์žˆ๋Š”๋ฐ, 11์˜ ๊ฒฝ์šฐ 11=22+22+12+12+12(5๊ฐœ ํ•ญ)๋„ ๊ฐ€๋Šฅํ•˜๋‹ค. ์ด ๊ฒฝ์šฐ, ์ˆ˜ํ•™์ž ์ˆŒํฌ๋ผํ…Œ์Šค๋Š” โ€œ11์€ 3๊ฐœ ํ•ญ์˜ ์ œ๊ณฑ์ˆ˜ ํ•ฉ์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.โ€๋ผ๊ณ  ๋งํ•œ๋‹ค. ๋˜ํ•œ 11์€ ๊ทธ๋ณด๋‹ค ์ ์€ ํ•ญ์˜ ์ œ๊ณฑ์ˆ˜ ํ•ฉ์œผ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ, 11์„ ๊ทธ ํ•ฉ์œผ๋กœ์จ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ œ๊ณฑ์ˆ˜ ํ•ญ์˜ ์ตœ์†Œ ๊ฐœ์ˆ˜๋Š” 3์ด๋‹ค. ์ฃผ์–ด์ง„ ์ž์—ฐ์ˆ˜ N์„ ์ด๋ ‡๊ฒŒ ์ œ๊ณฑ์ˆ˜๋“ค์˜ ํ•ฉ์œผ๋กœ ํ‘œํ˜„ํ•  ๋•Œ์— ๊ทธ ํ•ญ์˜ ์ตœ์†Œ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์—..

[python]๋ฐฑ์ค€ 6549๋ฒˆ : ํžˆ์Šคํ† ๊ทธ๋žจ์—์„œ ๊ฐ€์žฅ ํฐ ์ง์‚ฌ๊ฐํ˜•
Algorithm ๋ฌธ์ œ/BOJ 2020. 3. 6. 22:30

์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 1 ์ดˆ 256 MB 16367 3904 2522 25.125% ๋ฌธ์ œ ํžˆ์Šคํ† ๊ทธ๋žจ์€ ์ง์‚ฌ๊ฐํ˜• ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์•„๋ž˜์ชฝ์œผ๋กœ ์ •๋ ฌ๋˜์–ด ์žˆ๋Š” ๋„ํ˜•์ด๋‹ค. ๊ฐ ์ง์‚ฌ๊ฐํ˜•์€ ๊ฐ™์€ ๋„ˆ๋น„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ, ๋†’์ด๋Š” ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜๋„ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์™ผ์ชฝ ๊ทธ๋ฆผ์€ ๋†’์ด๊ฐ€ 2, 1, 4, 5, 1, 3, 3์ด๊ณ  ๋„ˆ๋น„๊ฐ€ 1์ธ ์ง์‚ฌ๊ฐํ˜•์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ํžˆ์Šคํ† ๊ทธ๋žจ์ด๋‹ค. ํžˆ์Šคํ† ๊ทธ๋žจ์—์„œ ๊ฐ€์žฅ ๋„“์ด๊ฐ€ ํฐ ์ง์‚ฌ๊ฐํ˜•์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…๋ ฅ ์ž…๋ ฅ์€ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์—ฌ๋Ÿฌ ๊ฐœ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ํ•œ ์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ์ง์‚ฌ๊ฐํ˜•์˜ ์ˆ˜ n์ด ๊ฐ€์žฅ ์ฒ˜์Œ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค n โ‰ค 100,000) ๊ทธ ๋‹ค์Œ n๊ฐœ์˜ ์ •์ˆ˜ h1, ..., hn (0 โ‰ค hi โ‰ค 1,000,000,..

[python]๋ฐฑ์ค€ 1780๋ฒˆ : ์ข…์ด์˜ ๊ฐœ์ˆ˜
Algorithm ๋ฌธ์ œ/BOJ 2020. 3. 6. 22:26

์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 2 ์ดˆ 256 MB 9503 5463 4173 58.667% ๋ฌธ์ œ Nร—Nํฌ๊ธฐ์˜ ํ–‰๋ ฌ๋กœ ํ‘œํ˜„๋˜๋Š” ์ข…์ด๊ฐ€ ์žˆ๋‹ค. ์ข…์ด์˜ ๊ฐ ์นธ์—๋Š” -1, 0, 1์˜ ์„ธ ๊ฐ’ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด ํ–‰๋ ฌ์„ ์ ์ ˆํ•œ ํฌ๊ธฐ๋กœ ์ž๋ฅด๋ ค๊ณ  ํ•˜๋Š”๋ฐ, ์ด๋•Œ ๋‹ค์Œ์˜ ๊ทœ์น™์— ๋”ฐ๋ผ ์ž๋ฅด๋ ค๊ณ  ํ•œ๋‹ค. ๋งŒ์•ฝ ์ข…์ด๊ฐ€ ๋ชจ๋‘ ๊ฐ™์€ ์ˆ˜๋กœ ๋˜์–ด ์žˆ๋‹ค๋ฉด ์ด ์ข…์ด๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•œ๋‹ค. (1)์ด ์•„๋‹Œ ๊ฒฝ์šฐ์—๋Š” ์ข…์ด๋ฅผ ๊ฐ™์€ ํฌ๊ธฐ์˜ 9๊ฐœ์˜ ์ข…์ด๋กœ ์ž๋ฅด๊ณ , ๊ฐ๊ฐ์˜ ์ž˜๋ฆฐ ์ข…์ด์— ๋Œ€ํ•ด์„œ (1)์˜ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค. ์ด์™€ ๊ฐ™์ด ์ข…์ด๋ฅผ ์ž˜๋ž์„ ๋•Œ, -1๋กœ๋งŒ ์ฑ„์›Œ์ง„ ์ข…์ด์˜ ๊ฐœ์ˆ˜, 0์œผ๋กœ๋งŒ ์ฑ„์›Œ์ง„ ์ข…์ด์˜ ๊ฐœ์ˆ˜, 1๋กœ๋งŒ ์ฑ„์›Œ์ง„ ์ข…์ด์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•ด๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…๋ ฅ ์ฒซ์งธ ์ค„์— N(1โ‰คNโ‰ค3^7, N์€ 3^..

[python]๋ฐฑ์ค€ 5620๋ฒˆ : ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋‘ ์ ์˜ ๊ฑฐ๋ฆฌ
Algorithm ๋ฌธ์ œ/BOJ 2020. 3. 1. 20:21

https://www.acmicpc.net/problem/5620 ์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ œ์ถœ ์ •๋‹ต ๋งž์€ ์‚ฌ๋žŒ ์ •๋‹ต ๋น„์œจ 1 ์ดˆ 256 MB 1700 558 294 40.664% ๋ฌธ์ œ ํ‰๋ฉด์ƒ์— n๊ฐœ์˜ ์  (P1, .... , Pn) ์ด ๋†“์—ฌ์ ธ์žˆ๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ, ๊ฑฐ๋ฆฌ๊ฐ€ ์ตœ์†Œ์ธ ๋‘ ๊ฐœ์˜ ์ ์„ ๊ตฌํ•˜๊ณ  ๊ทธ ๊ฑฐ๋ฆฌ๋ฅผ ์•Œ๊ณ  ์‹ถ๋‹ค. ์ž…๋ ฅ ์ž…๋ ฅ์€ ์ฒซ ๋ฒˆ์งธ ์ค„์— ์ •์ˆ˜๋กœ ๋œ ์ ์˜ ๊ฐœ์ˆ˜ n์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ n+1๋ฒˆ์งธ ์ค„๊นŒ์ง€ 2๊ฐœ์˜ ์ •์ˆ˜ x,y๊ฐ€ ๊ณต๋ฐฑ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ฃผ์–ด์ง„๋‹ค. i+1๋ฒˆ์งธ ์ค„์€ Pi ์˜ x,y ์ขŒํ‘œ๋ฅผ ์˜๋ฏธํ•˜๊ณ  n๊ฐœ์˜ ์ ์— ๋Œ€ํ•ด์„œ ์ฃผ์–ด์ง€๊ฒŒ ๋œ๋‹ค. ์ ์˜ ๊ฐœ์ˆ˜๋Š” 2 โ‰ฆ n โ‰ฆ 500000 , ์ขŒํ‘œ์˜ ๋ฒ”์œ„๋Š” -10000 โ‰ฆ x,y โ‰ฆ10000๋กœ ์ฃผ์–ด์ง„๋‹ค. ๋˜ํ•œ, ๋ชจ๋“  ์ ์˜ ์ขŒํ‘œ๋Š” ๊ฐ™์€ ๊ฒƒ์ด ์—†์ด ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ..