728x90
출저 : https://programmers.co.kr/learn/courses/30/lessons/42842
이 문제는... 완전 탐색 문제입니다만.. 완전 탐색으로 풀지 못하였습니다..
아무래도 효율성도 수식으로 하는 것이 굉장히 좋을 것으로 판단하여 그냥 수식으로 풀었습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
def solution(brown, yellow):
sum_by = brown + yellow
# print(sum_by)
# temp = []
# for i in range(1, sum_by+1):
# global y = (sum_by+1) - i
# if sum_by % i == 0 and i > sum_by+1:
# temp_b = i
# temp_y = sum_by//i
# temp.append([temp_b, temp_y])
# print(temp_b, temp_y)\
# 스택에 넣어서
answer_b = (brown + 4 + ((brown + 4) ** 2 - 16 * (brown + yellow)) ** 0.5) / 4
answer_y = (brown+yellow) // answer_b
print(max(answer_b,answer_y), min(answer_b,answer_y))
answer = [max(answer_b,answer_y), min(answer_b,answer_y)]
return answer
|
cs |
728x90
'알고리즘' 카테고리의 다른 글
[ 프로그래머스 ] 섬 연결하기 (0) | 2021.09.24 |
---|---|
[ 프로그래머스 ] 구명보트 (0) | 2021.09.17 |
[ 프로그래머스 ] 큰 수 만들기 (0) | 2021.09.16 |
[프로그래머스] 소수 찾기 (0) | 2021.09.14 |
[프로그래머스 ] 카카오 - 메뉴 리뉴얼 (0) | 2021.08.31 |