Programmers / 21.01.12 Carpet

sooheeยท2021๋…„ 3์›” 1์ผ
0

์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ชฉ๋ก ๋ณด๊ธฐ
16/20

๐Ÿ’œ ๋ฌธ์ œ ์„ค๋ช…

๋ฌธ์ œ์„ค๋ช…

Leo๋Š” ์นดํŽซ์„ ์‚ฌ๋Ÿฌ ๊ฐ”๋‹ค๊ฐ€ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์ค‘์•™์—๋Š” ๋…ธ๋ž€์ƒ‰์œผ๋กœ ์น ํ•ด์ ธ ์žˆ๊ณ  ํ…Œ๋‘๋ฆฌ 1์ค„์€ ๊ฐˆ์ƒ‰์œผ๋กœ ์น ํ•ด์ ธ ์žˆ๋Š” ๊ฒฉ์ž ๋ชจ์–‘ ์นดํŽซ์„ ๋ดค์Šต๋‹ˆ๋‹ค.

Leo๋Š” ์ง‘์œผ๋กœ ๋Œ์•„์™€์„œ ์•„๊นŒ ๋ณธ ์นดํŽซ์˜ ๋…ธ๋ž€์ƒ‰๊ณผ ๊ฐˆ์ƒ‰์œผ๋กœ ์ƒ‰์น ๋œ ๊ฒฉ์ž์˜ ๊ฐœ์ˆ˜๋Š” ๊ธฐ์–ตํ–ˆ์ง€๋งŒ, ์ „์ฒด ์นดํŽซ์˜ ํฌ๊ธฐ๋Š” ๊ธฐ์–ตํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

Leo๊ฐ€ ๋ณธ ์นดํŽซ์—์„œ ๊ฐˆ์ƒ‰ ๊ฒฉ์ž์˜ ์ˆ˜ brown, ๋…ธ๋ž€์ƒ‰ ๊ฒฉ์ž์˜ ์ˆ˜ yellow๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ ์นดํŽซ์˜ ๊ฐ€๋กœ, ์„ธ๋กœ ํฌ๊ธฐ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฐ์—ด์— ๋‹ด์•„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”.

๐Ÿ’œ ์†Œ์Šค์ฝ”๋“œ

    from statistics import median
def divisor(yellow):
    div = []
    for i in range(1,yellow+1):
        if (yellow % i ==0):
            div.append(i)
    return div
def solution(brown, yellow):
    arr = []
    arr = divisor(yellow)
    total = brown + yellow
    flag = 0
    answer = []
    for i in range((int)(len(arr)/2)+1):
        if flag == 1 :
            break
        width = arr[i] + 2
        length = arr[len(arr)-i-1] + 2
        if (width * length == total):
            answer.append(length) 
            answer.append(width)
            flag = 1         
            break 
    return answer

๐Ÿ’œ ๋‚ด ๋ตํ‚น๋ตํ‚น

brown ํƒ€์ผ์€ ๋‹จ์ง€ ํ…Œ๋‘๋ฆฌ์ผ ๋ฟ์ด๊ธฐ ๋•Œ๋ฌธ์— yellow์˜ ๊ฐฏ์ˆ˜์™€ ๋ฐฐ์น˜๋งŒ ์•Œ๋ฉด ์ „์ฒด ๊ฐœ์ˆ˜๋ฅผ ์•Œ๊ฒŒ ๋œ๋‹ค. ๊ทธ๋ž˜์„œ ์•ฝ์ˆ˜๋กœ ํ™•์ธํ•˜๊ณ , ์•ฝ์ˆ˜ ๊ตฌํ•ด์„œ ๋ฐฐ์น˜๋ฅผ ํ™•์ธํ•œ๋‹ค์Œ์— ์ „์ฒด ๊ฐœ์ˆ˜๋ฅผ ํŒŒ์•…ํ•˜๋ฉด ๋œ๋‹ค.

โ— ๊ทผ๋ฐ ์—ฌ๊ธฐ์„œ! ์ƒ๊ฐํ–ˆ๋˜ ๋ถ€๋ถ„์ด, ๊ตณ์ด arr์— ์ €์žฅ์„ ํ•ด์•ผํ•˜๋‚˜, ๋ฐ”๋กœ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์„๊ฑฐ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์„ ํ–ˆ๋‹ค. ๊ฑฐ์˜ ์ˆ˜ํ•™๋ฌธ์ œ๋กœ ์ƒ๊ฐํ•˜๊ณ  ํ’€์–ด์•ผ ํ•˜๋Š”๊ฒŒ ๋งž๋Š”๊ฑฐ ๊ฐ™๋‹ค...!! โ—

profile
๐Ÿปโ€โ„๏ธ

0๊ฐœ์˜ ๋Œ“๊ธ€