11399번: ATM
첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000)
www.acmicpc.net
요즘 알고리즘 공부를 너무 안해서 다까먹었다..
계정 날리고 다시 공부하고싶음
흠흠
그래도 브루트포스는 알고리즘 몰라도 풀수있응까 이거 위주로 푸는 중이다.
문제
문제를 요약 및 재해석하자면,
배열의 0번째 + (0번째 + 1번째) + (0번째 + 1번째 + 2번째) + ... + (0번째 + 1번째 + ... + n번째) 를 구해달라는거다
풀면서 필기한건데 대충 이렇다.
이거 그대로 풀면된다!
// ATM
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
int n, rst = 0;
cin >> n;
vector<int> arr(n);
for (int i = 0; i < n; i++)
{
cin >> arr[i];
}
sort(arr.begin(), arr.end());
int turn = 0;
while (n != turn)
{
rst += arr[turn] * (n - turn++);
}
cout << rst;
}
끗!
728x90
'백준이당' 카테고리의 다른 글
[C++] 백준 2839번 : 설탕배달 (1) | 2023.11.30 |
---|---|
[C++] 백준 1065번 : 한수 (0) | 2023.11.28 |
[C++] 백준 14565번 : 역원(Inverse)구하기 (0) | 2023.08.16 |
[C++] 백준 1074번 : Z (0) | 2023.08.01 |
[C++] 백준 1182번? : 부분수열의 합 (0) | 2023.08.01 |