#include <iostream>
#include <algorithm>
using namespace std;
const int kmaxn = 1e6 + 5;
long long n;
long long a[kmaxn], t, c;
struct edge {
long long num = 1e8;
long long tnum = 0;
} b[kmaxn];
bool C(edge x, edge y) {
if (x.num < y.num) {
return true;
} else if (x.num == y.num) {
return x.tnum <= y.tnum;
}
return false;
}
int main() {
cin >> n >> c;
for (int i = 1; i <= n; i++) {
cin >> a[i];
}
sort(a + 1, a + 1 + n);
for (int i = 1; i <= n; i++) {
t = a[i] + c * abs((n - i));
b[i].num = min(b[i].num, t);
b[i].tnum = i;
}
sort(b + 1, b + 1 + n, C);
cout << b[1].tnum << " " << b[1].num << "\n";
return 0;
}
一个很正常不过的程序为什么会Nothing is compiled: OUTPUT exceeds呢?