문제
https://www.acmicpc.net/problem/11399
걸린 시간
00 : 11 : 21
풀이
Python3
if __name__ == "__main__":
N = int(input())
P = list(map(int, input().split()))
P.sort()
total = 0
pre = 0
for i in P:
pre += i
total += pre
print(total)
오름차순 정렬 후 각각 앞에 있는 값을 모두 누적해 더해주면 해결되는 아주 쉬운 문제이다.
차례대로 이전의 누적된 값을 저장하는 pre, 전체 값을 저장하는 total 두개의 변수를 사용했다.
유형이 그리디 알고리즘이라고는 하지만 난이도가 너무 쉬워서 그런가 평소에 풀던 그리디 알고리즘과는 조금 거리가 멀어 보인다.
'Baekjoon' 카테고리의 다른 글
Baekjoon 18870번 좌표 압축 (0) | 2020.08.09 |
---|---|
Baekjoon 1074번 Z (0) | 2020.08.09 |
Baekjoon 11726번 2xn 타일링 (0) | 2020.08.09 |
Baekjoon 1463번 1로 만들기 (0) | 2020.08.09 |
Baekjoon 9095번 1, 2, 3 더하기 (0) | 2020.08.09 |
댓글