问
  • 板块学术版
  • 楼主zren6ing
  • 当前回复11
  • 已保存回复11
  • 发布时间2023/8/12 08:57
  • 上次更新2023/11/3 04:20:55
查看原帖
问
516714
zren6ing楼主2023/8/12 08:57
#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呢?

2023/8/12 08:57
加载中...