티스토리 뷰
"그리디"
당연히 좀 더 큰 금액을 할인 받는것이 전체 금액이 최소가 된다. 따라서 주어진 가격을 내림차순 정렬하여 세 개 상품씩 그룹을 지어 가장 작은 가격을 더해 총 할인액을 구하는 것이 할인이 최대인것.
그리디.
내림차순 정렬하고 선택한다.
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 31 32 33 34 35 36 37 38 39 40 41 42 | import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.Collections; import java.util.StringTokenizer; class Solution { static int T,N; static Integer[] arr; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); T = Integer.parseInt(br.readLine()); int t = 1; while(T-- > 0 ) { N = Integer.parseInt(br.readLine()); arr = new Integer[N]; StringTokenizer st = new StringTokenizer(br.readLine()); int total = 0; for (int i = 0; i < N; i++) { arr[i] = Integer.parseInt(st.nextToken()); total += arr[i]; } Arrays.sort(arr, Collections.reverseOrder()); int sale = 0; for (int i = 2; i < N; i+=3) { sale += arr[i]; } System.out.printf("#%d %d\n",t++,total-sale); } } } | cs |
'Study > 알고리즘 문제풀이' 카테고리의 다른 글
SWEA 2112. 보호 필름 :: 돼지개발자 (0) | 2019.02.14 |
---|---|
SWEA 1808. 지희의 고장난 계산기 :: 돼지개발자 (1) | 2019.02.12 |
백준 2026. 소풍 :: 돼지개발자 (0) | 2019.02.08 |
백준 1389. 케빈 베이컨의 6단계 법칙 :: 돼지개발자 (0) | 2019.02.07 |
백준 2583. 영역 구하기 :: 돼지개발자 (0) | 2019.02.07 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday