반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 맥북환경설정
- 학점은행제
- it자격증
- 학점은행제무료강의
- 의사결정나무모형
- SQL
- 개인프로필스튜디오창업
- 코딩테스트
- Pass By Value
- python
- 맥북
- 채널계
- 컴퓨터공학학사취득
- jdk
- 코어뱅킹
- 렌탈스튜디오창업
- fastapi
- MSA
- oracleapex
- 오라클
- 은행IT
- 모놀리식
- 계정계
- union
- jdk17
- Homebrew
- 맥북셋팅
- 디렉토리계층구조
- DB
- 프로그래머스
Archives
- Today
- Total
개발머해니
[파이썬] 최대 곱 구하기 - 그리디 본문
728x90
반응형
실습 설명
def max_product(card_lists):
# 여기에 코드를 작성하세요
# 테스트 코드
test_cards = [[1, 2, 3], [4, 6, 1], [8, 2, 4], [3, 2, 5], [5, 2, 3], [3, 2, 1]]
print(max_product(test_cards))
여럿이서 카드 게임을 하고 있는데, 각 플레이어는 3장의 카드를 들고 있습니다. 위의 경우 첫 번째 플레이어는 , , 3을 들고 있고, 두 번째 플레이어는 , , 1을 들고 있고, 세 번째 플레이어는 8, 2, 4를 들고 있는 거죠.
함수 max_product는 한 사람당 카드를 하나씩 뽑아서 모두 곱했을 때 가능한 최대 곱을 리턴합니다. max_product를 Greedy Algorithm 방식으로 구현해 보세요.
실습 결과
def max_product(card_lists):
# 누적된 곱을 저장하는 변수
product = 1
# 반복문을 돌면서 카드 뭉치를 하나씩 본다
for card_list in card_lists:
# product에 각 뭉치의 최댓값을 곱해 준다
product *= max(card_list)
return product
# 테스트 코드
test_cards1 = [[1, 6, 5], [4, 2, 3]]
print(max_product(test_cards1))
test_cards2 = [[9, 7, 8], [9, 2, 3], [9, 8, 1], [2, 8, 3], [1, 3, 6], [7, 7, 4]]
print(max_product(test_cards2))
test_cards3 = [[1, 2, 3], [4, 6, 1], [8, 2, 4], [3, 2, 5], [5, 2, 3], [3, 2, 1]]
print(max_product(test_cards3))
test_cards4 = [[5, 5, 5], [4, 3, 5], [1, 1, 1], [9, 8, 3], [2, 8, 4], [5, 7, 4]]
print(max_product(test_cards4))
24
244944
10800
12600
728x90
반응형
'알고리즘' 카테고리의 다른 글
[파이썬] 수강 신청 분석 - 그리디 ★ (0) | 2023.09.30 |
---|---|
[파이썬] 지각 벌금 적게 내기 분석 - 그리디 (0) | 2023.09.30 |
[파이썬] 최소 동전으로 거슬러 주기 - 그리디 (0) | 2023.09.24 |
[파이썬] 새꼼달꼼 장사 (2) Tabulation - 다이나믹 프로그래밍 ★ (0) | 2023.09.19 |
[파이썬] 새꼼달꼼 장사 (1) Memoization - 다이나믹 프로그래밍 ★ (0) | 2023.09.19 |