Submission #25506449
Source Code Expand
#include <queue>
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
#define int long long
#define LL long long
const int Maxn = 1e5;
int n, m;
int a[Maxn + 5];
signed main () {
cin >> n >> m;
for (int i = 1; i <= n; i++) cin >> a[i];
sort (a + 1, a + 1 + n);
LL res = 0;
for (int i = n; i >= 2; i--) {
int num = (n - i + 1);
if ((a[i] - a[i - 1]) * num >= m) {
int step = m / num;
//a[i] - step + 1 ~ a[i]
res += (LL)(a[i] - step + 1 + a[i]) * step * num / 2;
m -= num * step;
res += m * (a[i] - step);
m = 0;
break;
}
else {
int step = a[i] - a[i - 1];
//a[i] - step + 1 ~ a[i]
res += (LL)(a[i] - step + 1 + a[i]) * step * num / 2;
m -= num * step;
}
}
int num = n, step = min (m / num, a[1]);
//a[i] - step + 1 ~ a[i]
res += (LL)(a[1] - step + 1 + a[1]) * step * num / 2;
m -= num * step;
res += m * (a[1] - step);
cout << res;
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | E - Amusement Park |
| User | C2022lihan |
| Language | C++ (Clang 10.0.0) |
| Score | 500 |
| Code Size | 979 Byte |
| Status | AC |
| Exec Time | 93 ms |
| Memory | 3928 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 500 / 500 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | example0.txt, example1.txt |
| All | 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, 028.txt, 029.txt, 030.txt, 031.txt, 032.txt, 033.txt, 034.txt, 035.txt, 036.txt, 037.txt, 038.txt, 039.txt, 040.txt, 041.txt, 042.txt, 043.txt, 044.txt, 045.txt, 046.txt, 047.txt, 048.txt, 049.txt, example0.txt, example1.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 000.txt | AC | 13 ms | 3028 KiB |
| 001.txt | AC | 5 ms | 3124 KiB |
| 002.txt | AC | 3 ms | 3084 KiB |
| 003.txt | AC | 9 ms | 3132 KiB |
| 004.txt | AC | 5 ms | 3084 KiB |
| 005.txt | AC | 5 ms | 2992 KiB |
| 006.txt | AC | 5 ms | 2992 KiB |
| 007.txt | AC | 10 ms | 3144 KiB |
| 008.txt | AC | 90 ms | 3904 KiB |
| 009.txt | AC | 91 ms | 3888 KiB |
| 010.txt | AC | 87 ms | 3772 KiB |
| 011.txt | AC | 87 ms | 3888 KiB |
| 012.txt | AC | 87 ms | 3896 KiB |
| 013.txt | AC | 93 ms | 3836 KiB |
| 014.txt | AC | 89 ms | 3888 KiB |
| 015.txt | AC | 88 ms | 3888 KiB |
| 016.txt | AC | 5 ms | 3112 KiB |
| 017.txt | AC | 6 ms | 3000 KiB |
| 018.txt | AC | 4 ms | 3080 KiB |
| 019.txt | AC | 7 ms | 3132 KiB |
| 020.txt | AC | 6 ms | 3088 KiB |
| 021.txt | AC | 5 ms | 3164 KiB |
| 022.txt | AC | 77 ms | 3776 KiB |
| 023.txt | AC | 76 ms | 3924 KiB |
| 024.txt | AC | 71 ms | 3900 KiB |
| 025.txt | AC | 73 ms | 3852 KiB |
| 026.txt | AC | 73 ms | 3876 KiB |
| 027.txt | AC | 74 ms | 3900 KiB |
| 028.txt | AC | 70 ms | 3864 KiB |
| 029.txt | AC | 77 ms | 3892 KiB |
| 030.txt | AC | 77 ms | 3848 KiB |
| 031.txt | AC | 76 ms | 3892 KiB |
| 032.txt | AC | 76 ms | 3852 KiB |
| 033.txt | AC | 2 ms | 3056 KiB |
| 034.txt | AC | 2 ms | 2976 KiB |
| 035.txt | AC | 2 ms | 3060 KiB |
| 036.txt | AC | 2 ms | 3104 KiB |
| 037.txt | AC | 6 ms | 3164 KiB |
| 038.txt | AC | 5 ms | 3008 KiB |
| 039.txt | AC | 5 ms | 3004 KiB |
| 040.txt | AC | 69 ms | 3928 KiB |
| 041.txt | AC | 66 ms | 3788 KiB |
| 042.txt | AC | 62 ms | 3756 KiB |
| 043.txt | AC | 41 ms | 3884 KiB |
| 044.txt | AC | 42 ms | 3760 KiB |
| 045.txt | AC | 42 ms | 3852 KiB |
| 046.txt | AC | 43 ms | 3848 KiB |
| 047.txt | AC | 37 ms | 3772 KiB |
| 048.txt | AC | 42 ms | 3752 KiB |
| 049.txt | AC | 39 ms | 3872 KiB |
| example0.txt | AC | 2 ms | 2996 KiB |
| example1.txt | AC | 2 ms | 2992 KiB |