[Python] 카펫

hyeon·2021년 2월 15일
0

Programmers

목록 보기
13/18


def solution(brown, yellow):
    cases = []

    for i in range(1, yellow+1):
        if yellow%i == 0 and (i+2)*2 + (yellow//i)*2 == brown: 
            cases.append((i+2, yellow//i+2))
            cases.append((yellow//i+2, i+2))

    cases.sort(reverse=True)
    
    return cases[0]

others

근의 공식 활용

import math
def solution(brown, yellow):
    w = ((brown+4)/2 + math.sqrt(((brown+4)/2)**2-4*(brown+yellow)))/2
    h = ((brown+4)/2 - math.sqrt(((brown+4)/2)**2-4*(brown+yellow)))/2
    return [w,h]
import math
def solution(brown, yellow):
    ans=((brown-4)+math.sqrt((brown-4)**2-16*yellow))//4
    return [ans+2,yellow//ans+2]
profile
바스락바스락

0개의 댓글

Powered by GraphCDN, the GraphQL CDN