๋ฌธ์ ์ค๋ช
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์ ์ ์ฅ์ ํด์ผํ๋, ๋ฐ๋ก ๊ตฌํ๋ ๋ฐฉ๋ฒ์ด ์์๊ฑฐ ๊ฐ๋ค๋ ์๊ฐ์ ํ๋ค. ๊ฑฐ์ ์ํ๋ฌธ์ ๋ก ์๊ฐํ๊ณ ํ์ด์ผ ํ๋๊ฒ ๋ง๋๊ฑฐ ๊ฐ๋ค...!! โ