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

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

[๋ฌธ์ œ ํ’€์ด] 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.
๊นƒํ—™ ํ”„๋กœํ•„, ๋ฆฌ๋“œ๋ฏธ ๊พธ๋ฏธ๊ธฐ ๊นƒํ—™ ํ”„๋กœํ•„ ๋ฆฌ๋“œ๋ฏธ ์ƒ์„ฑ๊นƒํ—™ ํ”„๋กœํ•„ ์ฒซ ํ™”๋ฉด์— ์˜ˆ์˜๊ฒŒ ๊พธ๋ฉฐ๋†“์€ ์นœ๊ตฌ๋“ค์ด ์žˆ๊ธธ๋ž˜ ๋ฌผ์–ด๋ด์„œ ์‹œ์ž‘ํ•˜๊ฒŒ ๋œ ๊นƒํ—™ ํ”„๋กœํ•„ ๊พธ๋ฏธ๊ธฐ! (ํ”„๊พธ,, ๋ฆฌ๊พธ,,)๋จผ์ € ์ƒˆ๋กœ์šด ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ž์‹ ์˜ ๊นƒํ—™ ์•„์ด๋””์™€ ๋˜‘๊ฐ™์€ ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด์ด๋ ‡๊ฒŒ special repository ๋ผ๊ณ  ๋œจ๋ฉด์„œ ์ด ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ์˜ ๋ฆฌ๋“œ๋ฏธ๋ฅผ ๊นƒํ—™ ํ”„๋กœํ•„์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋œฌ๋‹ค. ์ผ๋‹จ์€ ์นœ๊ตฌ๊ฐ€ ๊พธ๋ฉฐ๋†“์€ ๊ฑธ ๋”ฐ๋ผ๊ฐ€๋ณด๋ ค๊ณ  ํ•œ๋‹ค.. ๊พธ๋ฏธ๊ณ  ์‹ถ์€๋ฐ ์—ด์ •์€ ์•„์ง ์—†๊ธฐ ๋•Œ๋ฌธ..์•„๋ฌดํŠผ ๊นƒํ—™ ๊พธ๋ฏธ๊ธฐ ์ข‹๊ฒŒ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(?) ๋งŒ๋“ค์–ด์„œ ์ œ๊ณตํ•ด์ฃผ์‹œ๋Š” ๋ถ„๋“ค์ด ๋งŽ์€ ๊ฒƒ ๊ฐ™๋‹ค. ์ข‹๋‹ค..... ๋ณธ๊ฒฉ ๋ฆฌ๋“œ๋ฏธ ์ž‘์„ฑ 1. ๋ฌธ๊ตฌ ๋ฐฐ๊ฒฝ ์„ค์ •๋งจ ์œ„์— ์˜ˆ์˜๊ฒŒ ํŒŒ๋„์น˜๋Š” ํšจ๊ณผ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ํšจ๊ณผ๊ฐ€ ์žˆ๋‹ค.๊นƒํ—™์—์„œ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•, ์ƒ‰์ƒ ๋ชฉ๋ก ๋“ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ณ , ๊ทธ ๋ฐ‘์— ๋งํฌ๋Š” ์„ค์ •ํ•˜๋Š”.. 2024. 7. 23.
[์ด๋ก ] ๊ณต๊ฐ„๋ณต์žก๋„ (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.
TIL : ๋ฌธ์ž์—ด ์Šฌ๋ผ์ด์‹ฑ ์ธ๋ฑ์Šค ์—๋Ÿฌ, ๋ฆฌ์ŠคํŠธ ์ปดํ”„๋ฆฌํ—จ์…˜ ๐Ÿ’ก ์Šฌ๋ผ์ด์‹ฑ์€ ์ดˆ๊ณผํ•ด๋„ ์ธ๋ฑ์Šค ๋ฒ”์œ„ ์—๋Ÿฌ๊ฐ€ ๋‚˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•œ๋‹ค. ์˜คํ•ดํ•˜๊ณ  ์žˆ์—ˆ๋„ค..ใ…Žใ…Ž ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค "์ž˜๋ผ์„œ ๋ฐฐ์—ด๋กœ ์ €์žฅํ•˜๊ธฐ" ๋ฅผ ํ‘ผ ์ฝ”๋“œ์ด๋‹ค. def solution(my_str, n): answer = [] while len(my_str) > 0: # while๋ฌธ ์•ˆ์—์„œ ๋งค๊ฐœ๋ณ€์ˆ˜ my_str์„ n๊ฐœ์”ฉ ์ž˜๋ผ๋‚ผ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— my_str์˜ ๊ธธ์ด๊ฐ€ 0๋ณด๋‹ค ํฐ ๋™์•ˆ๋งŒ ๋ฐ˜๋ณตํ•œ๋‹ค. if len(my_str) > n: # ์ž˜๋ผ๋‚ด๋Š” ๋™์•ˆ my_str์˜ ๊ธธ์ด๊ฐ€ n๋ณด๋‹ค ์ž‘์•„์ง€๋ฉด ์ธ๋ฑ์Šค ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœ ์กฐ๊ฑด๋ฌธ์œผ๋กœ ์ƒํ™ฉ์„ ๋‚˜๋ˆ ์ค€๋‹ค. answer.append(my_str[:n]) # ์Šฌ๋ผ์ด์‹ฑ์œผ๋กœ n๊ฐœ์”ฉ ์ž๋ฅด๊ธฐ my_str = my_str[n:] # ์Šฌ๋ผ์ด์‹ฑ์œผ๋กœ answer์— ์ถ”๊ฐ€ํ•œ ๋ถ€๋ถ„ ์‚ญ์ œ else: answ.. 2023. 4. 29.