๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กํŒŒ์ด์ฌ (12)

It's easy, if you try

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก (ํŒŒ์ด์ฌ / Python) / ํ•ด์‹œ

๋ฌธ์ œ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€์— ์ ํžŒ ์ „ํ™”๋ฒˆํ˜ธ ์ค‘, ํ•œ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ค๋ฅธ ๋ฒˆํ˜ธ์˜ ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์„ ๊ฒฝ์šฐ, ๊ตฌ์กฐ๋Œ€ ์ „ํ™”๋ฒˆํ˜ธ๋Š” ์˜์„์ด์˜ ์ „ํ™”๋ฒˆํ˜ธ์˜ ์ ‘๋‘์‚ฌ์ž…๋‹ˆ๋‹ค. ๊ตฌ์กฐ๋Œ€ : 119 ๋ฐ•์ค€์˜ : 97 674 223 ์ง€์˜์„ : 11 9552 4421 ์ „ํ™”๋ฒˆํ˜ธ๋ถ€์— ์ ํžŒ ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด phone_book ์ด solution ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์–ด๋–ค ๋ฒˆํ˜ธ๊ฐ€ ๋‹ค๋ฅธ ๋ฒˆํ˜ธ์˜ ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์œผ๋ฉด false๋ฅผ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด true๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ phone_book์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 1,000,000 ์ดํ•˜์ž…๋‹ˆ๋‹ค. ๊ฐ ์ „ํ™”๋ฒˆํ˜ธ์˜ ๊ธธ์ด๋Š” 1 ์ด์ƒ 20 ์ดํ•˜์ž…๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์ œ phone_bookreturn [119, 9767422..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋” ๋งต๊ฒŒ (ํŒŒ์ด์ฌ / Python)

๋ฌธ์ œ ๋งค์šด ๊ฒƒ์„ ์ข‹์•„ํ•˜๋Š” Leo๋Š” ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด Leo๋Š” ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๊ฐ€ ๊ฐ€์žฅ ๋‚ฎ์€ ๋‘ ๊ฐœ์˜ ์Œ์‹์„ ์•„๋ž˜์™€ ๊ฐ™์ด ํŠน๋ณ„ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ž์–ด ์ƒˆ๋กœ์šด ์Œ์‹์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์„ž์€ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ = ๊ฐ€์žฅ ๋งต์ง€ ์•Š์€ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ + (๋‘ ๋ฒˆ์งธ๋กœ ๋งต์ง€ ์•Š์€ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ * 2) Leo๋Š” ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๊ฐ€ K ์ด์ƒ์ด ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜์—ฌ ์„ž์Šต๋‹ˆ๋‹ค. Leo๊ฐ€ ๊ฐ€์ง„ ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด scoville๊ณผ ์›ํ•˜๋Š” ์Šค์ฝ”๋นŒ ์ง€์ˆ˜ K๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์„ž์–ด์•ผ ํ•˜๋Š” ์ตœ์†Œ ํšŸ์ˆ˜๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ œํ•œ ์‚ฌํ•ญ scoville์˜..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์Šคํ‚ฌ ์ฒดํฌ ๋ ˆ๋ฒจ 1 ํ’€์–ด๋ณด๊ธฐ(Python)

๋ฌธ์ œ ์‹ค๋ ฅ ์ฒดํฌ ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr ๋ ˆ๋ฒจ 1 ํ’€์ด ๋‚œ์ด๋„๊ฐ€ ์ข€ ๋งŽ์ด ์‰ฌ์›Œ์„œ ์˜ฌ๋ฆฌ๊ธฐ ๋ฏผ๋งํ•˜์ง€๋งŒ ใ…Žใ…Ž ํ’€์–ด๋ณด์•˜๋‹ค. ๋ฌธ์ œ 1 n = 3 ์ด๋ฉด '์ˆ˜๋ฐ•์ˆ˜' n = 5 ์ด๋ฉด '์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜' ์™€ ๊ฐ™์€ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. def solution(n): answer = '' for i in range(n): if i% 2 == 0: answer += '์ˆ˜' else: answer += '๋ฐ•' โ€‹ return answer ๋ฌธ์ œ 2 ๋ฐฐ์—ด arr์ด ์ฃผ์–ด์ง€๋ฉด ์ตœ์†Œ ์ˆซ์ž๋ฅผ ์ œ๊ฑฐํ•œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋ฐฐ์—ด์ด ๋ชจ๋‘ ๋น„์–ด์ง„ ๊ฒฝ์šฐ์—๋Š” [-1]์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. def solutio..

[Python] array[::] ์‚ฌ์šฉ๋ฒ• - array ์Šฌ๋ผ์ด์‹ฑ

์Šฌ๋ผ์ด์‹ฑ (slicing) ๊ธฐ๋ณธํ˜•ํƒœ : array[startโ€‹ : end : โ€‹step] start : ์Šฌ๋ผ์ด์‹ฑ์„ ์‹œ์ž‘ํ•  ์‹œ์ž‘ ์œ„์น˜ end: ์Šฌ๋ผ์ด์‹ฑ์„ ๋๋‚ผ ์œ„์น˜๋กœ end๋Š” ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค. step: stride๋ผ๊ณ ๋„ ํ•˜๋ฉฐ ๋ช‡๊ฐœ์”ฉ ๋Š์–ด์„œ ๊ฐ€์ ธ์˜ฌ์ง€๋ฅผ ์ •ํ•œ๋‹ค. ์–‘์ˆ˜,์Œ์ˆ˜ ๋ชจ๋‘ ๊ฐ€๋Šฅ a[ start: ] : start ์œ„์น˜๋ถ€ํ„ฐ ๋๊นŒ์ง€ ๊ฐ€์ ธ์˜ค๊ธฐ a[ end : ]: ์‹œ์ž‘์ ๋ถ€ํ„ฐ end ์œ„์น˜๊นŒ์ง€ ๋ชจ๋‘ ๊ฐ€์ ธ์˜ค๊ธฐ a[ start : end ] : start์œ„์น˜ ๋ถ€ํ„ฐ end ์œ„์น˜๊นŒ์ง€ ๋ชจ๋‘ ๊ฐ€์ ธ์˜ค๊ธฐ a[ start : end : step ] (step์ด ์–‘์ˆ˜ ์ผ ๋•Œ) : ์˜ค๋ฅธ์ชฝ์œผ๋กœ step๋งŒํผ ์ด๋™ํ•˜๋ฉด์„œ ๊ฐ€์ ธ์˜จ๋‹ค. a[ start: end : step](step์ด ์Œ์ˆ˜์ผ ๋•Œ): ์™ผ์ชฝ์œผ๋กœ step๋งŒํผ ์ด๋™ํ•˜๋ฉด์„œ ๊ฐ€์ ธ์˜จ๋‹ค...

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ํƒ‘ (Python)

๋ฌธ์ œ ์ˆ˜ํ‰ ์ง์„ ์— ํƒ‘ N๋Œ€๋ฅผ ์„ธ์› ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ํƒ‘์˜ ๊ผญ๋Œ€๊ธฐ์—๋Š” ์‹ ํ˜ธ๋ฅผ ์†ก/์ˆ˜์‹ ํ•˜๋Š” ์žฅ์น˜๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐœ์‚ฌํ•œ ์‹ ํ˜ธ๋Š” ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ธ ํƒ‘๋ณด๋‹ค ๋†’์€ ํƒ‘์—์„œ๋งŒ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ํ•œ ๋ฒˆ ์ˆ˜์‹ ๋œ ์‹ ํ˜ธ๋Š” ๋‹ค๋ฅธ ํƒ‘์œผ๋กœ ์†ก์‹ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋†’์ด๊ฐ€ 6, 9, 5, 7, 4์ธ ๋‹ค์„ฏ ํƒ‘์ด ์™ผ์ชฝ์œผ๋กœ ๋™์‹œ์— ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ๋ฐœ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด, ํƒ‘์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‹ ํ˜ธ๋ฅผ ์ฃผ๊ณ ๋ฐ›์Šต๋‹ˆ๋‹ค. ๋†’์ด๊ฐ€ 4์ธ ๋‹ค์„ฏ ๋ฒˆ์งธ ํƒ‘์—์„œ ๋ฐœ์‚ฌํ•œ ์‹ ํ˜ธ๋Š” ๋†’์ด๊ฐ€ 7์ธ ๋„ค ๋ฒˆ์งธ ํƒ‘์ด ์ˆ˜์‹ ํ•˜๊ณ , ๋†’์ด๊ฐ€ 7์ธ ๋„ค ๋ฒˆ์งธ ํƒ‘์˜ ์‹ ํ˜ธ๋Š” ๋†’์ด๊ฐ€ 9์ธ ๋‘ ๋ฒˆ์งธ ํƒ‘์ด, ๋†’์ด๊ฐ€ 5์ธ ์„ธ ๋ฒˆ์งธ ํƒ‘์˜ ์‹ ํ˜ธ๋„ ๋†’์ด๊ฐ€ 9์ธ ๋‘ ๋ฒˆ์งธ ํƒ‘์ด ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ๋†’์ด๊ฐ€ 9์ธ ๋‘ ๋ฒˆ์งธ ํƒ‘๊ณผ ๋†’์ด๊ฐ€ 6์ธ ์ฒซ ๋ฒˆ์งธ ํƒ‘์ด ๋ณด๋‚ธ ๋ ˆ์ด์ € ์‹ ํ˜ธ๋Š” ์–ด๋–ค ํƒ‘์—์„œ๋„ ์ˆ˜์‹ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์†ก์‹  ํƒ‘(๋†’์ด..

[ํŒŒ์ด์ฌ] ์กฐํ•ฉ(combinations)์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ์— ์žˆ๋Š” ๊ฐ’๋“ค์˜ ๋ชจ๋“  ์กฐํ•ฉ ๊ตฌํ•˜๊ธฐ

์ •์˜ Combinations (์กฐํ•ฉ nCr) : ํ•˜๋‚˜์˜ ๋ฆฌ์ŠคํŠธ์—์„œ ๋ชจ๋“  ์กฐํ•ฉ์„ ๊ณ„์‚ฐํ•ด์•ผํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. Permutations (์ˆœ์—ด nPr) ๊ณผ์˜ ์ฐจ์ด ์ˆœ์—ด์€ ์ˆœ์„œ๊ฐ€ ๋ฐ”๋€ ๊ฒฝ์šฐ๋„ ํฌํ•จํ•˜๊ณ , ์กฐํ•ฉ์€ ์ˆœ์„œ๊ฐ€ ๋ฐ”๋€ ๊ฒฝ์šฐ๋Š” ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค(์ˆœ์„œ ์ƒ๊ด€ ์—†์Œ). ์˜ˆ๋ฅผ ๋“ค์–ด 1,2,3 ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฆฌ์ŠคํŠธ์—์„œ ์ˆœ์—ด์€ (1,2),(1,3),(2,3),(2,1),(3,1),(3,2) ์กฐํ•ฉ์€ (1,2),(1,3),(2,3) ์ด๋‹ค. ์‚ฌ์šฉ ๋ฐฉ๋ฒ• from itertools import combinations # itertools ์ค‘ combinations๋ฅผ import โ€‹ items = ['1','2','3'] c = list(combinations(items,2)) # 2๊ฐ€์ง€ ์กฐํ•ฉ์œผ๋กœ ์ด๋ฃจ์–ด์งˆ ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ l..