Dolphins의 HelloWorld
[백준]Baekjoon11399(Greedy Algorithm) 본문
문제링크 : https://www.acmicpc.net/problem/11399
생각보다 간단한 문제이다.
오름차순으로 주어진 수들을 정렬한 후 누적해서 더해주면 된다.
나같은 경우에는
for(int i=0; i<N; i++) -> 이렇게 오름차순으로 정렬된 배열을 배열의 크기 N까지 반복문을
돌릴 때 i번째 배열값이 N-i번 곱해지므로 이렇게 곱해진 것을 더해나갔다.
#include <iostream> #include <algorithm> using namespace std; int arr[1000]; int main() { int N; scanf("%d", &N); for (int i = 0; i < N; i++) scanf("%d", &arr[i]); sort(arr, arr + N); int sum = 0; for (int i = 0; i < N; i++) { sum += arr[i] * (N - i); } printf("%d\n", sum); }
'Algorithm > baekjoon문제풀이' 카테고리의 다른 글
[백준]Baekjoon1744(Greedy Algorithm) (0) | 2018.08.28 |
---|---|
[백준]Baekjoon1541(Greedy Algorithm) (0) | 2018.08.28 |
[백준]Baekjoon1931(Greedy Algorithm) (0) | 2018.08.28 |
[백준]Baekjoon11047(Greedy Algorithm) (0) | 2018.08.28 |
[백준]Baekjoon1967 (트리의 지름) (0) | 2018.08.22 |
Comments