Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
134053 廖悦扬 加工生产调度 C++ 解答错误 33 0 MS 308 KB 731 2024-03-02 11:46:43

Tests(4/12):


#include <bits/stdc++.h> #define int long long using namespace std; const int N = 10000 + 5; int n, m, a[N], b[N], wk[N], wa, wb; struct st{ int m, i; bool operator<(const st&a) { return m < a.m; } } stu[N]; signed main() { scanf("%d", &n); for (int i=1; i<=n; i++) scanf("%d", a+i), stu[i].i=i; for (int i=1; i<=n; i++) scanf("%d", b+i), stu[i].m=min(a[i], b[i]); sort(stu+1, stu+1+n); int l=1, r=n; for (int i=1; i<=n; i++) { if (stu[i].m == a[stu[i].i]) wk[l++] = stu[i].i; else wk[r--] = stu[i].i; } for (int i=1; i<=n; i++) { wa += a[wk[i]]; if (wa > wb) wb = wa; wb += b[wk[i]]; } printf("%d\n", wb); for (int i=1; i<=n; i++) printf("%d ", wk[i]); return 0; }


测评信息: