[이것이 코딩 테스트다, 그리디] 큰 수의 법칙

2024. 7. 29. 16:38· Algorithm/Greedy
목차
  1. 1. 문제 정의
  2. 2. 풀이
  3.  

1. 문제 정의

큰 수의 법칙은 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더해 가장 큰수를 만드는 법칙이다. 이때 특정 인덱스에 해당하는 수가 K번 연속해서 더해줄 수 없다. 

  • 입력: 첫째 줄에 N(2이상 1000이하), M(1이상 10000이하), K(1이상 10000이하)가 주어진다. 둘째 줄에는 N개의 자연수(1이상 10000이하)가 주어진다. 이때 입력으로 주어지는 K는 항상 M 이하다.
  • 출력: 큰 수의 법칙에 따라 더해진 답을 출력한다.

2. 풀이

# 입력
n, m, k = map(int, input().split())
num_list = list(map(int, input().split()))

# 첫 번째로 큰 수와 두 번째로 큰 수 뽑아냄
max_num = max(num_list)
num_list.remove(max_num)
second_max_num = max(num_list)

# 그리디 알고리즘으로 계산
recurring_term = max_num * k + second_max_num
result = m//(k+1)*recurring_term + m%(k+1)*max_num

print(result)

 

저작자표시 (새창열림)

'Algorithm > Greedy' 카테고리의 다른 글

[백준] 4237: 비 단조성 (python 파이썬)  (0) 2023.03.11
  1. 1. 문제 정의
  2. 2. 풀이
  3.  
'Algorithm/Greedy' 카테고리의 다른 글
  • [백준] 4237: 비 단조성 (python 파이썬)
코딩마루
코딩마루
코딩마루
Nam's Study Note
코딩마루
전체
오늘
어제
  • 분류 전체보기 (169)
    • BackEnd (88)
      • JSP & Servlet (12)
      • Java (12)
      • JDBC (5)
      • Spring (55)
      • Spring Security (3)
      • AWS (6)
      • Docker (0)
    • FrontEnd (4)
      • HTML (4)
    • Algorithm (23)
      • Brute Force (2)
      • Greedy (2)
      • Graph (2)
      • Dynamic Programming (4)
      • Divide and Conquer (1)
      • Data Structure (11)
    • AI (4)
      • NLP (4)
    • DB (29)
      • Oracle (13)
      • MySQL (15)
    • Data (8)
      • Crawling (8)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.3.0
코딩마루
[이것이 코딩 테스트다, 그리디] 큰 수의 법칙
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.