CSES - Aalto Competitive Programming 2024 - wk12 - Wed - Results
Submission details
Task:Particle Accelerator II
Sender:bubu2006
Submission time:2024-11-27 16:22:19 +0200
Language:C++ (C++20)
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.02 sdetails

Code

#pragma GCC optimize("O3,unroll-loops")

#include <bits/stdc++.h>
using namespace std;

#define int long long
#define rep(i, a, b) for(int i = a; i < (b); ++i)
#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()
typedef long long ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
typedef long double ld;

void solve() {
    int n;
    cin >> n;

    vi a(n);
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }

    sort(all(a));
    reverse(all(a));

    int cur = a[0];
    int ans = 0;
    for (int i = 1; i < n; i++) {
        ans += cur * a[i];
        cur += a[i];
    }
    cout << ans << '\n';
}

signed main() {
    cin.tie(0)->sync_with_stdio(0);
    cin.exceptions(cin.failbit); // RTE if input wrong datatype
    
    int t = 1;
    // cin >> t; 

    while (t--) {
        solve();
    }
}

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