최솟값 만들기 - Python
2023. 10. 14. 07:09ㆍ공부/📝 프로그래머스
1. 풀이 코드
def solution(A, B):
return sum([a*b for a, b in zip(sorted(A), sorted(B, reverse=True))])
# Test Cases
print(solution([1, 4, 2], [5, 4, 4]))
print(solution([1, 2], [3, 4]))
간단하게 풀었습니다.
더보기
1) 틀린 코드
import numpy as np
def solution(A, B):
answer = float('inf')
A_list = []
B_list = []
for i in range(len(A)):
A_list.append(A[i - len(A):] + A[:i])
for i in range(len(B)):
B_list.append(B[i - len(B):] + B[:i])
A_array = np.array(A_list)
B_array = np.array(B_list)
print(A_array)
print(B_array)
for item in np.dot(A_array, B_array).tolist():
for check in item:
if answer > check:
answer = check
return answer
# Test Cases
print(solution([1, 4, 2], [5, 4, 4]))
print(solution([1, 2], [3, 4]))
내적을 통해서 모든 경우의 수를 계산하는 과정을 해보고 싶었는데 이 코드는 틀렸다고 나오네요... 생각을 다시 해야겠습니다.
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
'공부 > 📝 프로그래머스' 카테고리의 다른 글
이진 변환 반복하기 - Python (0) | 2023.10.14 |
---|---|
올바른 괄호 - Python (0) | 2023.10.14 |
JadenCase 문자열 만들기 - Python (0) | 2023.10.14 |
3진법 뒤집기 - Python (0) | 2023.10.14 |
같은 숫자는 싫어 - Python (0) | 2023.10.14 |