일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 프로그래머스
- HashSet
- 백준 1647번 도시 분할 계획 - java
- map
- 최소 힙 1927
- 백준 1043번 거짓말 - java 분리 집합
- 백준 1806번 부분합 java
- 18111번 마인크래프트 - java 구현
- kotlin
- HashMap
- 코틀린기초
- Stack
- 백준 3190번
- 백준 2473번 세 용액 - java
- 프로그래머스 java
- StringBuilder
- ac 5430번
- StringTokenizer
- dp
- replace()
- mysql hy000 에러
- 프로그래머스 자바
- Java
- 백준 14938번 서강그라운드
- 백준 1541
- append
- toUpperCase
- 백준 2467번 용액 자바 - 이분탐색
- 백준 1197번 최소 스패닝 트리 - java
- hash
Archives
- Today
- Total
말하는 컴공감자의 텃밭
백준 11399번 ATM <S4> - 본문
728x90
전형적인 그리디 알고리즘으로, 인출시간이 빠른 사람을 앞에두면 최소의 시간으로 모두 인출 할 수 있다.
다른 조건을 확인 할 건 없으므로 정렬 후 순서에 맞게 더해준다.
temp 변수를 통해 반복적으로 앞의 수를 더 해준다.
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 | import java.util.*; import java.util.Scanner; public class Main { public static void main(String[] args) { // Input Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int [] atm = new int[N]; int answer = 0; int temp = 0; for (int i = 0; i < N; i++) { atm[i] = sc.nextInt(); } sc.close(); // Logic Arrays.sort(atm); // 오름차순 정렬 for(int j = 0; j<atm.length; j++) { temp += atm[j]; answer += temp; } //output System.out.println(answer); } } | cs |
728x90
Comments