太水了,上代码:
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int n, ans, x;
vector<int> a;
int main() {
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%d", &x);
a.push_back(x);
}
sort(a.begin(), a.end());
for (int i = 0; i < n - 1; i++) {
int num = a[0] + a[1];
ans += num;
a[1] = num;
a.erase(a.begin());//弹出第一个元素
sort(a.begin(), a.end());//别忘了再排一遍,如果不排,万一测试数据是 8 9 10 11 呢?
}
printf("%d", ans);
return 0;
}
很简单吧,警告⚠:只适用于普通版,如果是大数据版的就过不了了(包括517上的)。