์ „์ฒด

1. ํ–‰ ์ˆ˜์ค€ ๊ณ„์‚ฐ์‹๋ชจ๋“  ํ–‰์— ๋Œ€ํ•ด ๊ณ„์‚ฐ → ๊ฒฐ๊ณผ๊ฐ’ ์ง‘๊ณ„๋ชจ๋“  ํ–‰์— ๋Œ€ํ•ด ๊ฒฐ๊ณผ ๊ฐ’์ด ์‹ค์ฒดํ™”(materialized)๋œ๋‹ค.๋”ฐ๋ผ์„œ ์ฒ˜๋ฆฌ ๋กœ์ง์„ ๋‹ค์‹œ ์‹คํ–‰ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค.# e.g., ๋งค์ถœ > 2๋ฐฑ๋งŒ[๋งค์ถœ] > 2000000 โœ… ๋กœ์ง1. ๋งค์ถœ ์—ด(์ปฌ๋Ÿผ)์˜ ๋ชจ๋“  ํ–‰์— ๋Œ€ํ•ด ๋น„๊ต์—ฐ์‚ฐ์ž ์‚ฌ์šฉ2. T/F ๊ฐ’์ด ๋‚˜๋‰˜๊ณ , T์˜ ์ˆ˜์™€ F์˜ ์ˆ˜๊ฐ€ ์ง‘๊ณ„๋จ∴ ๊ฐ ์‹œ๋„ ๋‚ด์—์„œ ๋ชฉํ‘œ ๋งค์ถœ(2๋ฐฑ๋งŒ)์„ ๋‹ฌ์„ฑํ•œ ์ฃผ๋ฌธ๊ฑด์ˆ˜์˜ ๋น„์œจ์„ ์•Œ ์ˆ˜ ์žˆ์Œ   2. ์ง‘๊ณ„ ์ˆ˜์ค€ ๊ณ„์‚ฐ์‹๊ฐ ํ•„๋“œ ๊ฐ’์„ ์ง‘๊ณ„ → ๊ณ„์‚ฐ๋ทฐ์— ์‚ฌ์šฉ๋œ ์ฐจ์›์— ๋”ฐ๋ผ ์ง‘๊ณ„ ๊ฐ’์ด ๋‹ฌ๋ผ์ง„๋‹ค.๋”ฐ๋ผ์„œ ๋ฐ์ดํ„ฐ ์ถ”์ถœ ์‹œ ์‹ค์ฒดํ™”๋  ์ˆ˜ ์—†๋‹ค.# e.g., ๋งค์ถœ > 2์–ตSUM([๋งค์ถœ]) > 200000000โœ… ๋กœ์ง1. ๋งค์ถœ์ด ํ†ต์งธ๋กœ ์ง‘๊ณ„๋จ (=์ด๋งค์ถœ)2. ์ด๋งค์ถœ์— ๋น„๊ต์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชฉํ‘œ ๋งค์ถœ(2์–ต)์„..
๋ฐฐ์†ก ์˜ˆ์ •์ผ ์˜ˆ์ธก ์„ฑ๊ณต๊ณผ ์‹คํŒจ -- ์ตœ์ข…SELECT strftime('%Y-%m-%d', order_purchase_timestamp) as "purchase_date", SUM(CASE WHEN order_estimated_delivery_date >= order_delivered_customer_date THEN 1 ELSE 0 END) as "success", SUM(CASE WHEN order_estimated_delivery_date    # ์ ‘๊ทผ ๋ฐฉ์‹ 1. success์™€ fail ์ผ€์ด์Šค๋ฅผ ๊ฐœ๋ณ„ ์ปฌ๋Ÿผ์œผ๋กœ ๋งŒ๋“ค์–ด์•ผ๊ฒ ๋‹ค.2. SUM (ํ˜น์€ COUNT๋„ ์ƒ๊ด€์—†์Œ) ์ง‘๊ณ„ ํ›„ ์ผ์ž๋ณ„ ๊ทธ๋ฃนํ™”ํ•ด์•ผ๊ฒ ๋‹ค.3. ๊ธฐํƒ€ ์กฐ๊ฑด๋“ค ์ถฉ์กฑ e.g., 17๋…„ 1์›” ๋ฐ์ดํ„ฐ๋งŒ, ๋‚ ์งœ ์˜ค๋ฆ„์ฐจ์ˆœ   # ๋ฐฐ์šด์  1. SQLite..
๋ฐ์ดํ„ฐ ๋ถ„์„๊ฐ€์—๊ฒŒ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์š”ํ• ๊นŒ? | ์š”์ฆ˜IT ์ตœ๊ทผ ๊ฐœ๋ฐœ์ž ๊ต์œก ๋ถ์ด ๋ถˆ๋ฉด์„œ, ์ด๋ฅธ๋ฐ” ‘์ฝ”๋”ฉ’์ด๋ผ๊ณ  ๋ญ‰๋šฑ๊ทธ๋ ค ํ‘œํ˜„ํ•˜๋Š” ๊ฐœ๋ฐœ ๊ธฐ์ˆ ๋“ค์„ ๋ฐฐ์šฐ๋Š” ํ•™์›์ด ๋งŽ์•„์กŒ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ธ์žฌ๋“ค์ด ์ž์‹ ๋“ค์ด ๋ฐฐ์šด ๊ฑธ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ•œ ๋ฒˆ์ฏค ๊ผญ ๊ฑฐ์น˜๋Š” ๋‹จ yozm.wishket.com ๐Ÿ“Œ ์š”์•ฝ 1. ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์‹ค์ œ ์—…๋ฌด์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ ์ œํ•œ๋œ ๋ฒ”์œ„์˜ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋‚ด๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ ํ•ด๋‹น ์ฝ”๋“œ๊ฐ€ ์ž˜ ๋Œ์•„๊ฐ€๋ฉฐ ์˜ฌ๋ฐ”๋ฅธ ๊ฒฐ๊ณผ ๊ฐ’์„ ๋ณด์—ฌ์ฃผ๋Š”์ง€, ํšจ์œจ์ ์ธ์ง€ ๋“ฑ์„ ํ‰๊ฐ€ํ•˜๋Š” ์‹œํ—˜ 2. ๋ฐ์ดํ„ฐ ๋ถ„์„๊ฐ€์˜ ์—ญํ•  ๋ฐ์ดํ„ฐ ํ™œ์šฉํ•˜์—ฌ ์„œ๋น„์Šค/ํ”„๋กœ๋•ํŠธ ๊ณ ๋„ํ™” e.g., ๊ตญ๋‚ด ์‚ฌ๊ฑด์‚ฌ๊ณ  ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™” ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์˜์‚ฌ ๊ฒฐ์ •์˜ ํ† ๋Œ€ ๋งˆ๋ จ → ์ „๋žต, ๋ถ„์„ ์ง€์›, ๊ฐ€์„ค ๊ฒ€์ • e.g., ์„œ์šธ์‹œ ์‹ฌ์•ผ๋ฒ„์Šค ๋…ธ์„  ์ตœ์ ํ™” ๋ถ„์„ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋Œ€์‹œ๋ณด๋“œ ๋ฐ ๋ฆฌํฌํŠธ ์ œ์ž‘ โžก๏ธ..
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr # ์ •๋‹ต def solution(array, commands): # ๋นˆ ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ answer = [] # a~b ์ž๋ฅด๊ณ  -> ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ -> ์ •๋ ฌํ•œ ๋ฐฐ์—ด์˜ c๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ๋นˆ ๋ฆฌ์ŠคํŠธ์— ๋„ฃ๊ธฐ for a, b, c in commands: answer.append(sorted(array[a-1:b])[c-1]) return answer ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜ Kit์— ์žˆ๋Š” ์‰ฌ์šด ์ •๋ ฌ ๋ฌธ์ œ. ์‚ฌ์‹ค ์ •๋ ฌ๋ณด๋‹ค๋Š” ์Šฌ๋ผ์ด์‹ฑ ๊ธฐ์ดˆ์ฒ˜๋Ÿผ ๋А๊ปด์กŒ๋Š”๋ฐ ์›๋ž˜ ์ •๋ ฌ ๋ฌธ์ œ๊ฐ€ ์ด๋Ÿฐ ๊ฑธ๊นŒ? ํ—ท๊ฐˆ๋ ธ๋˜ ์ง€์ ์€ ์•„๋ž˜ ๋ฌธ์ œ ์„ค๋ช…์˜ ๋นจ๊ฐ„์ค„ ์นœ ๋ถ€..
โœ… ์ง‘์š”ํ•˜๊ณ  ์ ๊ทน์ ์ธ ํŒ€ ์˜ค๋Š˜์€ ํŒ€ ๋‹จ์ฒด๋กœ ๋‘ ๋ถ„์˜ ํŠœํ„ฐ๋‹˜๊ป˜ ์ด ๋„ค ๋ฒˆ ์ฐพ์•„๊ฐ”๋˜ ๊ต‰์žฅํ•œ ๋‚ ์ด๋‹ค. ํŒ€์› ๋ถ„๋“ค์ด ๋ชจ๋‘ (๊ต‰์žฅํžˆ ์ข‹์€ ์˜๋ฏธ๋กœ) ์ง‘์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฌด์—‡ ํ•˜๋‚˜ ํ—ˆํˆฌ๋ฃจ ๋„˜๊ธฐ์ง€ ์•Š๋Š”๋‹ค. ๋”ฐ๋ผ์„œ ํ•จ๊ป˜ ๋จธ๋ฆฌ ์ฅ์–ด๋œฏ์œผ๋ฉฐ ๊ณ ๋ฏผ๊ณผ ํ† ๋ก ์„ ํ•œ ๋์— ์งˆ๋ฌธ์„ ์ •๋ฆฌํ•˜์—ฌ ํŠœํ„ฐ๋‹˜์„ ๋ฐฉ๋ฌธํ–ˆ๊ณ  ๊ฒฐ๊ตญ ๋‹ต์„ ์–ป์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋‚ด์ผ ์˜ค์ „์ด ๋˜๋ฉด ๋˜๋‹ค์‹œ ์งˆ๋ฌธ๊ฑฐ๋ฆฌ๊ฐ€ ์ƒ๊ธธ ๊ฒƒ์„ ์šฐ๋ฆฌ ํŒ€ ๋ชจ๋‘ ๋‹ค ์•ˆ๋‹ค. ๐Ÿ˜‰ โœ… ๋ฌธ์ œ์— ๋„ˆ๋ฌด ๋งค๋ชฐ๋จ, ํ•˜์ง€๋งŒ ๋˜‘๋˜‘ํ–ˆ์ฃ  ์ €๋… ์‹œ๊ฐ„๋Œ€์— ํŠœํ„ฐ๋‹˜๊ป˜ ๋“œ๋ฆฐ ์งˆ๋ฌธ์€ ๋ฐ”๋กœ ์œ„ ์บก์ฒ˜ ์† ์š”๊ตฌ์‚ฌํ•ญ ๋•Œ๋ฌธ์ด์—ˆ๋‹ค. ํŠนํžˆ ํžŒํŠธ ํ† ๊ธ€์˜ ๋‘ ๋ฒˆ์งธ์™€ ์„ธ ๋ฒˆ์งธ ๋ถˆ๋ฆฟ ๋‚ด์šฉ. ๋ฐ์ดํ„ฐ ๊ฒ€ํ† ๋ฅผ ์œ„ํ•œ๋‹ค๋ฉด ๊ทธ๋ƒฅ event ํ…Œ์ด๋ธ”๊ณผ order_items ํ…Œ์ด๋ธ”์„ joinํ•˜์—ฌ ๊ฐ™์€ user_id์™€ product_id๋ฅผ ์ฐพ์•„ 1๏ธโƒฃ (event) creat..
ํ–‰ํŒฝ
'๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก