-
[백준] 11399번: ATM(그리디 알고리즘) - PythonAlgorithm 2022. 3. 3. 23:25
https://www.acmicpc.net/problem/11399
[문제유형]
- 그리디 알고리즘
[문제]
[제출한 코드 및 풀이]
1차시도(사유: 오답)
- 아래와 같이 코드 구현 후 출력은 제대로 됐는데 오답처리가 되었다.
- 뭔가 입력 받는 과정에서 오답 처리가 된 것 같은 느낌..
n = int(input()) seq = input().split(" ") seq.sort() sum = 0 for i in range(1, len(seq)+1): for j in range(1, i+1): sum += int(seq[j-1]) // print(f"j: {seq[j-1]}") print(sum)
2차시도(정답)
- 입력 부분을 map으로 받으면서 list로 만들도록 수정하였더니 통과되었다.
n = int(input()) seq = list(map(int, input().split())) seq.sort() // 오름차순 정렬 sum = 0 for i in range(1, len(seq)+1): // P1일 때 1번(1), P2일 때 2번(1+2) 이런식으로 누적 for j in range(1, i+1): sum += seq[j-1] // print(f"j: {seq[j-1]}") print(sum)
풀이를 아래와 같이 이미지로 제작해보았음. 시간 순서대로 정렬해 두고 작은 숫자부터 자리수만큼 누적해서 더해주면 끝!
'Algorithm' 카테고리의 다른 글
[백준] 2231번: 분해합(브루트포스) - Python (0) 2022.03.07 [백준] 2798번: 블랙잭(브루트포스) - Python (0) 2022.03.07 [백준] 11047번: 동전 0(그리디 알고리즘) - Python (0) 2022.03.03 [백준] 1541번: 잃어버린 괄호(그리디 알고리즘) - Python (0) 2022.03.03 [백준 알고리즘] 10773번: 제로(스택) - Python (0) 2022.02.28