레야몬
[C++] 11399번 ATM - 정렬 본문
#include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
using namespace std;
int pe[1000]; //돈을 인출하는데 걸리는 시간
int N, tsum; //사람의 수, 걸리는 시간 총합
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
cin >> N;
for (int i=0; i<N; i++)
cin >> pe[i];
sort(pe, pe+N);
for (int i=0; i<N; i++)
tsum+=(N-i)*pe[i];
cout << tsum;
return 0;
}
간단하게 오름차순으로 정렬하면 빠르게 구할 수 있다. 벡터를 써서 less<>()로 풀려고 했는데 잘 안되서 배열로 풀었다. 왜 안되는 거지...
※현재 고등학교 등교중인 학생입니다. 이제 알고리즘을 본격적으로 공부하기 시작해서 아직 초보입니다. 혹시 제가 잘못 알고있는 점이나 더 좋은 풀이 방법이 있어 댓글에 남겨주시면 감사히 하나하나 열심히 읽어보겠습니다. 좋아요, 단순한 댓글 한마디라도 저에겐 큰 힘이 됩니다! 감사합니다.
'알고리즘 > 백준' 카테고리의 다른 글
[C++] 11724번 연결 요소의 개수 - 그래프 이론, BFS, DFS (0) | 2022.08.30 |
---|---|
[C++] 11723번 집합 - 집합 (0) | 2022.08.30 |
[C++언어] 11279번 최대 힙 - 우선순위 큐 (0) | 2022.08.29 |
[C++] 7662번 이중 우선순위 큐 - 우선순위 큐, 트리 (0) | 2022.08.29 |
[C언어] 9095번 1, 2, 3 더하기 - DP (0) | 2022.08.29 |
Comments