1 条题解
-
0
不分导致的。
#include <bits/stdc++.h> using namespace std; const int N = 1e5 + 10; int n, m, a[N], b[N], id[N], ans[N]; bool cmp(int x, int y) { return b[x] > b[y]; } int main() { cin >> n >> m; for(int i = 1; i <= n; ++ i) cin >> a[i]; for(int i = 1; i <= m; ++ i) cin >> b[i], id[i] = i; sort(id + 1, id + 1 + m, cmp); sort(a + 1, a + 1 + n, greater<int>()); for(int i = 1; i <= n; ++ i) ans[id[(i - 1) % m + 1]] += a[i]; for(int i = 1; i <= m; ++ i) cout << ans[i] << ' '; return 0; }
- 1
信息
- ID
- 522
- 时间
- 1000ms
- 内存
- 64MiB
- 难度
- 10
- 标签
- 递交数
- 3
- 已通过
- 1
- 上传者