๐Ÿ‘ฉ‍๐Ÿ’ปStudy Group/๐Ÿซง2021 ํ•˜๊ณ„ ๋ชจ๊ฐ์ฝ”_์™€ํ”ŒํŒฌ์ผ€์žŒํ˜ธ๋–ก

08์›” 10์ผ ๋ชจ๊ฐ์ฝ”_์™€ํŒฌํ˜ธ 6ํšŒ์ฐจ ๊ฒฐ๊ณผ ๋ณด๊ณ ์„œ

๋ฟŒ์•ผ._. 2021. 8. 10. 23:55

2021๋…„ 08์›” 10์ผ ํ™”์š”์ผ 21:00~24:00

 

๐Ÿ”ฅ Baekjoon ๋ฌธ์ œ ํ•ด๊ฒฐ ๐Ÿ”ฅ

 

โ‘  1292 ์‰ฝ๊ฒŒ ํ‘ธ๋Š” ๋ฌธ์ œ_ Python

 

https://www.acmicpc.net/problem/1292

๋™ํ˜ธ๋Š” ๋‚ด๋…„์— ์ดˆ๋“ฑํ•™๊ต๋ฅผ ์ž…ํ•™ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋™ํ˜ธ ์–ด๋จธ๋‹ˆ๋Š” ์ˆ˜ํ•™ ์„ ํ–‰ ํ•™์Šต์„ ์œ„ํ•ด ์‰ฝ๊ฒŒ ํ‘ธ๋Š” ๋ฌธ์ œ๋ฅผ ๋™ํ˜ธ์—๊ฒŒ ์ฃผ์—ˆ๋‹ค.
์ด ๋ฌธ์ œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1์„ ํ•œ ๋ฒˆ, 2๋ฅผ ๋‘ ๋ฒˆ, 3์„ ์„ธ ๋ฒˆ, ์ด๋Ÿฐ ์‹์œผ๋กœ 1 2 2 3 3 3 4 4 4 4 5 .. ์ด๋Ÿฌํ•œ ์ˆ˜์—ด์„ ๋งŒ๋“ค๊ณ  ์–ด๋Š ์ผ์ •ํ•œ ๊ตฌ๊ฐ„์„ ์ฃผ๋ฉด ๊ทธ ๊ตฌ๊ฐ„์˜ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
ํ•˜์ง€๋งŒ ๋™ํ˜ธ๋Š” ํ˜„์žฌ ๋” ์–ด๋ ค์šด ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š๋ผ ๋ฐ”์˜๊ธฐ์— ์šฐ๋ฆฌ๊ฐ€ ๋™ํ˜ธ๋ฅผ ๋„์™€์ฃผ์ž.

 

- ๋จผ์ €, n*(n+1)/2 ๊ณต์‹์„ ์ด์šฉํ•˜์—ฌ index๋ฅผ ๊ตฌํ•˜์˜€๋‹ค. 

๊ทธ ๋‹ค์Œ ํ•ฉ์„ ์‰ฝ๊ฒŒ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด arr ๋ฐฐ์—ด์— ์œ„์—์„œ ๊ตฌํ•œ index๋งŒํผ 1 2 2 3 3 3 4 4 4 4 ์™€ ๊ฐ™์ด ๋„ฃ์–ด์ฃผ์—ˆ๋‹ค.

arr ๋ฐฐ์—ด์„ ํ™œ์šฉํ•˜์—ฌ ๊ตฌ๊ฐ„์˜ ํ•ฉ์„ ์‰ฝ๊ฒŒ ๊ตฌํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

 

โ‘ก 11557 Yangjojang of The Year_ Python

 

https://www.acmicpc.net/problem/11557

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

 

- ํฌ๊ฒŒ ์ƒ๊ฐํ•ด์•ผํ•  ๋ถ€๋ถ„ ์—†์ด ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์˜€๋‹ค.

๋ฐฐ์—ด์— ๋‹ด์•„ ์†Œ๋น„ํ•œ ์ˆ ์˜ ์–‘์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•ด์ค€ ํ›„ ๋งจ ์•ž์˜ ํ•™๊ต ์ด๋ฆ„์„ ์ถœ๋ ฅํ•ด์ฃผ๋ฉด ๋!

 

 

โ‘ข 10815 ์ˆซ์ž ์นด๋“œ_ PyPy3

 

https://www.acmicpc.net/problem/10815

 

์ˆซ์ž ์นด๋“œ๋Š” ์ •์ˆ˜ ํ•˜๋‚˜๊ฐ€ ์ ํ˜€์ ธ ์žˆ๋Š” ์นด๋“œ์ด๋‹ค. ์ƒ๊ทผ์ด๋Š” ์ˆซ์ž ์นด๋“œ N๊ฐœ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์ •์ˆ˜ M๊ฐœ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ด ์ˆ˜๊ฐ€ ์ ํ˜€์žˆ๋Š” ์ˆซ์ž ์นด๋“œ๋ฅผ ์ƒ๊ทผ์ด๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”์ง€ ์•„๋‹Œ์ง€๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

- ์ฒ˜์Œ์— ์‹œ๊ฐ„ ์ดˆ๊ณผ ๋ฐœ์ƒ

- sys ์ž…๋ ฅ์„ ๋ถ€๋ถ„ ์‚ฌ์šฉ ๋Œ€์‹  ์ „์ฒด ์‚ฌ์šฉ -> 2% ์—์„œ ์‹œ๊ฐ„ ์ดˆ๊ณผ ๋ฐœ์ƒ

- ์นด๋“œ์˜ ์œ ๋ฌด๋ฅผ ํŒ๋ณ„ํ•˜๋Š” ๊ฒƒ ์ด๋ฏ€๋กœ set์„ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋ณต ์ œ๊ฑฐ -> ํ†ต๊ณผ

 

 

โ‘ฃ 2217 ๋กœํ”„ _ Python

 

https://www.acmicpc.net/problem/2217

 

N(1 ≤ N ≤ 100,000)๊ฐœ์˜ ๋กœํ”„๊ฐ€ ์žˆ๋‹ค. ์ด ๋กœํ”„๋ฅผ ์ด์šฉํ•˜์—ฌ ์ด๋Ÿฐ ์ €๋Ÿฐ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค.
๊ฐ๊ฐ์˜ ๋กœํ”„๋Š” ๊ทธ ๊ตต๊ธฐ๋‚˜ ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฌผ์ฒด์˜ ์ค‘๋Ÿ‰์ด ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜๋„ ์žˆ๋‹ค.
ํ•˜์ง€๋งŒ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋กœํ”„๋ฅผ ๋ณ‘๋ ฌ๋กœ ์—ฐ๊ฒฐํ•˜๋ฉด ๊ฐ๊ฐ์˜ ๋กœํ”„์— ๊ฑธ๋ฆฌ๋Š” ์ค‘๋Ÿ‰์„ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.
k๊ฐœ์˜ ๋กœํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋Ÿ‰์ด w์ธ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ๋•Œ, ๊ฐ๊ฐ์˜ ๋กœํ”„์—๋Š” ๋ชจ๋‘ ๊ณ ๋ฅด๊ฒŒ
w/k ๋งŒํผ์˜ ์ค‘๋Ÿ‰์ด ๊ฑธ๋ฆฌ๊ฒŒ ๋œ๋‹ค.
๊ฐ ๋กœํ”„๋“ค์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ด ๋กœํ”„๋“ค์„ ์ด์šฉํ•˜์—ฌ ๋“ค์–ด์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋Š” ๋ฌผ์ฒด์˜ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์„
๊ตฌํ•ด๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.
๋ชจ๋“  ๋กœํ”„๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•  ํ•„์š”๋Š” ์—†์œผ๋ฉฐ, ์ž„์˜๋กœ ๋ช‡ ๊ฐœ์˜ ๋กœํ”„๋ฅผ ๊ณจ๋ผ์„œ ์‚ฌ์šฉํ•ด๋„ ๋œ๋‹ค.

 

- ๋ฌธ์ œ ์ดํ•ด๋ถ€ํ„ฐ ์กฐ๊ธˆ ์–ด๋ ค์› ๋‹ค ๐Ÿ˜ฅ

- ๊ฒฐ๊ตญ, ๋ฌธ์ œ ์ดํ•ด๋ฅผ ์œ„ํ•ด ์กฐ๊ธˆ์˜ ๊ฒ€์ƒ‰ ์ฐฌ์Šค ๐Ÿ˜

- ์ž…๋ ฅ ๋ฐ›์€ ํ›„ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ

-> ์ž„์˜๋กœ ๋กœํ”„ ๊ณจ๋ผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ) ์ค‘๋Ÿ‰ ๊ฐ€์žฅ ํฐ ๊ฒƒ์„ ์„ ํƒํ•˜๋ฉด ๋กœํ”„ ํ•˜๋‚˜๋งŒ ์„ ํƒ ๊ฐ€๋Šฅ (๋‚˜๋จธ์ง€๋Š” ์ค‘๋Ÿ‰ ๋ฒ„ํ‹ฐ์ง€ x)

-> ์ž„์˜๋กœ ๋กœํ”„ ๊ณจ๋ผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ) ์ค‘๋Ÿ‰ ๊ฐ€์žฅ ์ž‘์€ ๊ฒƒ์„ ์„ ํƒํ•˜๋ฉด ๋ชจ๋“  ๋กœํ”„ ์„ ํƒ ๊ฐ€๋Šฅ

- ์ด๊ฒƒ์„ ํ™œ์šฉํ•˜์—ฌ ๋กœํ”„ ์ž„์˜๋กœ ๊ณ ๋ฅธ ๊ฒฝ์šฐ ๋กœํ”„๊ฐ€ ๋ฒ„ํ‹ธ ์ˆ˜ ์žˆ๋Š” ์ค‘๋Ÿ‰ ๊ตฌํ•จ

- ์ตœ๋Œ€ ์ค‘๋Ÿ‰ ์ถœ๋ ฅ