CSES - Aalto Competitive Programming 2024 - wk12 - Wed - Results
Submission details
Task:Particle Accelerator II
Sender:Nallue
Submission time:2024-11-27 17:31:25 +0200
Language:C++ (C++11)
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#5ACCEPTED0.00 sdetails
#6ACCEPTED0.00 sdetails
#7ACCEPTED0.00 sdetails
#8ACCEPTED0.00 sdetails
#9ACCEPTED0.00 sdetails
#10ACCEPTED0.00 sdetails
#11ACCEPTED0.00 sdetails
#12ACCEPTED0.01 sdetails
#13ACCEPTED0.07 sdetails

Code

#include <iostream>
#include <queue>
#include <vector>

using namespace std;

int main() {
    long long n;
    cin >> n;

    vector<long long> masses(n);
    for (int i = 0; i < n; ++i) {
        cin >> masses[i];
    }

    priority_queue<long long, vector<long long>, greater<long long>> pq(masses.begin(), masses.end());

    long long totalCost = 0;

    while (pq.size() > 1) {
        long long x = pq.top(); pq.pop();
        long long y = pq.top(); pq.pop();

        long long cost = x * y;
        totalCost += cost;

        pq.push(x + y);
    }

    cout << totalCost << endl;

}

Test details

Test 1

Verdict: ACCEPTED

input
2
5 10 

correct output
50

user output
50

Test 2

Verdict: ACCEPTED

input
3
5 2 1 

correct output
17

user output
17

Test 3

Verdict: ACCEPTED

input
4
6 1 8 9 

correct output
197

user output
197

Test 4

Verdict: ACCEPTED

input
5
10 10 6 2 10 

correct output
552

user output
552

Test 5

Verdict: ACCEPTED

input
6
3 1 9 9 3 4 

correct output
322

user output
322

Test 6

Verdict: ACCEPTED

input
7
9 10 4 3 9 1 1 

correct output
540

user output
540

Test 7

Verdict: ACCEPTED

input
8
1 3 8 4 5 10 8 5 

correct output
816

user output
816

Test 8

Verdict: ACCEPTED

input
9
9 1 10 3 9 4 6 9 3 

correct output
1251

user output
1251

Test 9

Verdict: ACCEPTED

input
10
1803 684 195 6648 4633 1942 72...

correct output
594464350

user output
594464350

Test 10

Verdict: ACCEPTED

input
100
1542 4463 7401 8734 2634 865 5...

correct output
124146493451

user output
124146493451

Test 11

Verdict: ACCEPTED

input
1000
7778 6074 2376 8595 8243 8930 ...

correct output
12149459777256

user output
12149459777256

Test 12

Verdict: ACCEPTED

input
10000
5140 9219 7732 6591 8705 3663 ...

correct output
1274117469101964

user output
1274117469101964

Test 13

Verdict: ACCEPTED

input
100000
8489 8136 1789 5914 544 1110 3...

correct output
125270679504052570

user output
125270679504052570