728x90
교재 : 이것이 코딩테스트다
package com.algorithm.greedy;
import java.io.*;
import java.util.Arrays;
import java.util.StringTokenizer;
public class GreedyEx01 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken()); // 입력받을 숫자의 갯수
int M = Integer.parseInt(st.nextToken()); // 더할 횟수
int K = Integer.parseInt(st.nextToken());
int [] arr = new int[N];
StringTokenizer st2 = new StringTokenizer(br.readLine());
for(int i = 0; i < N; i++){
arr[i] = Integer.parseInt(st2.nextToken());
}
Arrays.sort(arr);
int first = arr[arr.length - 1];
int second = arr[arr.length - 2];
int result = 0;
int count = 0;
for(int i = 0; i < M; i++){
if(count < K){
result += first;
count++;
}
else{
result += second;
count = 0;
}
}
System.out.println(result);
}
}
다른 풀이 방법
[Algorithm] 그리디 알고리즘 문제 풀이 - 큰 수의 법칙
그리디 알고리즘 문제 풀이 - 큰수의법칙 '이것이 취업을 위한 코딩 테스트다 with 파이썬' 이라는 책을 공부 중입니다. 이 글은 해당 책에서 그리디 알고리즘 문제 중 '큰수의 법칙' 문제와 풀
scshim.tistory.com
728x90
'Programming > 알고리즘' 카테고리의 다른 글
[java, 알고리즘, 그리디] :: 1이 될 때까지 (0) | 2021.02.17 |
---|---|
[java, 알고리즘, 그리디] :: 숫자 카드 게임 (0) | 2021.02.17 |
[greedy] - 백준 11399번 ATM (0) | 2020.09.16 |
백준 - RGB 거리, python (0) | 2020.09.07 |
백준 - 1로 만들기, DP / python3 (0) | 2020.09.06 |
댓글