Python 16

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | python] ์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณ ๋“์  Kit > ์™„์ „ํƒ์ƒ‰ > ์ตœ์†Œ์ง์‚ฌ๊ฐํ˜• ์ตœ์†Œ์ง์‚ฌ๊ฐํ˜• Lv.1 ๋ช…ํ•จ ์ง€๊ฐ‘์„ ๋งŒ๋“œ๋Š” ํšŒ์‚ฌ์—์„œ ์ง€๊ฐ‘์˜ ํฌ๊ธฐ๋ฅผ ์ •ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ๋ชจ์–‘๊ณผ ํฌ๊ธฐ์˜ ๋ช…ํ•จ๋“ค์„ ๋ชจ๋‘ ์ˆ˜๋‚ฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉด์„œ, ์ž‘์•„์„œ ๋“ค๊ณ  ๋‹ค๋‹ˆ๊ธฐ ํŽธํ•œ ์ง€๊ฐ‘์„ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์š”๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ง€๊ฐ‘์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ๋””์ž์ธํŒ€์€ ๋ชจ๋“  ๋ช…ํ•จ์˜ ๊ฐ€๋กœ ๊ธธ์ด์™€ ์„ธ๋กœ ๊ธธ์ด๋ฅผ ์กฐ์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ํ‘œ๋Š” 4๊ฐ€์ง€ ๋ช…ํ•จ์˜ ๊ฐ€๋กœ ๊ธธ์ด์™€ ์„ธ๋กœ ๊ธธ์ด๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๊ธด ๊ฐ€๋กœ ๊ธธ์ด์™€ ์„ธ๋กœ ๊ธธ์ด๊ฐ€ ๊ฐ๊ฐ 80, 70์ด๊ธฐ ๋•Œ๋ฌธ์— 80(๊ฐ€๋กœ) x 70(์„ธ๋กœ) ํฌ๊ธฐ์˜ ์ง€๊ฐ‘์„ ๋งŒ๋“ค๋ฉด ๋ชจ๋“  ๋ช…ํ•จ๋“ค์„ ์ˆ˜๋‚ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ 2๋ฒˆ ๋ช…ํ•จ์„ ๊ฐ€๋กœ๋กœ ๋ˆ•ํ˜€ ์ˆ˜๋‚ฉํ•œ๋‹ค๋ฉด 80(๊ฐ€๋กœ) x 50(์„ธ๋กœ) ํฌ๊ธฐ์˜ ์ง€๊ฐ‘์œผ๋กœ ๋ชจ๋“  ๋ช…ํ•จ๋“ค์„ ์ˆ˜๋‚ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ์˜ ์ง€๊ฐ‘ ํฌ๊ธฐ๋Š” 4000(=..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | python] ์ฒด์œก๋ณต

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณ ๋“์  Kit > ํƒ์š•๋ฒ•(Greedy) > ์ฒด์œก๋ณต ์ฒด์œก๋ณต Lv.1 ์ ์‹ฌ์‹œ๊ฐ„์— ๋„๋‘‘์ด ๋“ค์–ด, ์ผ๋ถ€ ํ•™์ƒ์ด ์ฒด์œก๋ณต์„ ๋„๋‚œ๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹คํ–‰ํžˆ ์—ฌ๋ฒŒ ์ฒด์œก๋ณต์ด ์žˆ๋Š” ํ•™์ƒ์ด ์ด๋“ค์—๊ฒŒ ์ฒด์œก๋ณต์„ ๋นŒ๋ ค์ฃผ๋ ค ํ•ฉ๋‹ˆ๋‹ค. ํ•™์ƒ๋“ค์˜ ๋ฒˆํ˜ธ๋Š” ์ฒด๊ฒฉ ์ˆœ์œผ๋กœ ๋งค๊ฒจ์ ธ ์žˆ์–ด, ๋ฐ”๋กœ ์•ž๋ฒˆํ˜ธ์˜ ํ•™์ƒ์ด๋‚˜ ๋ฐ”๋กœ ๋’ท๋ฒˆํ˜ธ์˜ ํ•™์ƒ์—๊ฒŒ๋งŒ ์ฒด์œก๋ณต์„ ๋นŒ๋ ค์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 4๋ฒˆ ํ•™์ƒ์€ 3๋ฒˆ ํ•™์ƒ์ด๋‚˜ 5๋ฒˆ ํ•™์ƒ์—๊ฒŒ๋งŒ ์ฒด์œก๋ณต์„ ๋นŒ๋ ค์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฒด์œก๋ณต์ด ์—†์œผ๋ฉด ์ˆ˜์—…์„ ๋“ค์„ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ฒด์œก๋ณต์„ ์ ์ ˆํžˆ ๋นŒ๋ ค ์ตœ๋Œ€ํ•œ ๋งŽ์€ ํ•™์ƒ์ด ์ฒด์œก์ˆ˜์—…์„ ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ „์ฒด ํ•™์ƒ์˜ ์ˆ˜ n, ์ฒด์œก๋ณต์„ ๋„๋‚œ๋‹นํ•œ ํ•™์ƒ๋“ค์˜ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด lost, ์—ฌ๋ฒŒ์˜ ์ฒด์œก๋ณต์„ ๊ฐ€์ ธ์˜จ ํ•™์ƒ๋“ค์˜ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ด๊ธด ๋ฐฐ์—ด reserve๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์ฒด์œก์ˆ˜์—…์„ ๋“ค์„ ์ˆ˜..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | python] ๊ธฐ๋Šฅ๊ฐœ๋ฐœ >> ๋‹ค์‹œ ํ’€์–ด๋ณด๊ธฐ

def solution(progresses, speeds): answer = [] # progresses๊ฐ€ ๋‚จ์•„์žˆ๋Š” ์ด์ƒ ๊ณ„์† while while progresses: cnt=0 # progresses๊ฐ€ ์—†๋Š”๋ฐ pop ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ progresses๊ฐ€ True์ธ์ง€ ํ™•์ธ ์ถ”๊ฐ€ while progresses and progresses[0] >=100: cnt+=1 progresses.pop(0) speeds.pop(0) progresses = [(progresses[i] + speeds[i]) for i in range(len(progresses))] # cnt๋Š” ๊ณ„์† ๋„ฃ์–ด์ฃผ๋Š”๋ฐ 0์ด ์•„๋‹ˆ๋ฉด ๋„ฃ์–ด์ฃผ์ง€ ์•Š์Œ if cnt != 0: answer.append(cnt) return answer # progre..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | python] ๊ฐ™์€ ์ˆซ์ž๋Š” ์‹ซ์–ด

def solution(arr): answer=[] for i in range(len(arr)-1): if arr[i]!=arr[i+1]: answer.append(arr[i]) answer.append(arr[-1]) return answer # i+1๋กœ range์˜ค๋ฅ˜๊ฐ€ ๋‚˜์ง€ ์•Š๊ธฐ ์œ„ํ•ด range()์— -1์„ ํ•ด์ค€๋‹ค # arr[-1] ๋งˆ์ง€๋ง‰์€ ๋“ค์–ด๊ฐ€์ง€ ์•Š์œผ๋ฏ€๋กœ ๋”ฐ๋กœ ๋„ฃ์–ด์คŒ

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | python] ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก

def solution(phone_book): answer = True ph = phone_book.copy() for i in phone_book: ph.remove(i) for k in ph: m = min(len(i), len(k)) if i[:m] == k[:m]: answer = False break return answer >>์‹œ๊ฐ„์ดˆ๊ณผ >>list์™€ for๋ฌธ์„ ๋‘๊ฐœ๋‚˜ ์จ์„œ, remove๋กœ list ํƒ์ƒ‰์œผ๋กœ ์ธํ•œ ์‹œ๊ฐ„ ์†Œ์š” def solution(phone_book): for x in phone_book: temp = "" for y in x: temp += y #๋ช‡ ๊ธ€์ž๊ฐ€ ๋งž์„์ง€ ๋ชจ๋ฅด๋‹ˆ๊น ํ•˜๋‚˜์”ฉ ๋” ํ•ด๋ด„ if temp in phone_book and temp != x: #dic์— ์žˆ์œผ๋ฉด์„œ ์ž๊ธฐ..