QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#660914 | #9422. Two-star Contest | Eunoiay | WA | 0ms | 3600kb | C++20 | 1.7kb | 2024-10-20 13:55:26 | 2024-10-20 13:55:26 |
Judging History
answer
#include <bits/stdc++.h>
#define int long long
using namespace std;
using i64 = long long;
void solve() {
int n, m, k;
cin >> n >> m >> k;
vector<int> s(n);
vector p(n, vector<int>(m));
for (int i = 0; i < n; i++) {
cin >> s[i];
for (int j = 0; j < m; j++) {
cin >> p[i][j];
}
}
vector<i64> l(n), r(n);
for (int i = 0; i < n; i++) {
int x = 0;
for (int j = 0; j < m; j++) {
if (p[i][j] != -1) {
l[i] += p[i][j];
} else {
x += 1;
}
}
r[i] = l[i] + 1LL * x * k;
}
vector<int> o(n);
iota(o.begin(), o.end(), 0);
sort(o.begin(), o.end(), [&](int i, int j) {
if (s[i] != s[j]) {
return s[i] < s[j];
}
return r[i] < r[j];
});
auto setToZero = [&](int i) {
for (int j = 0; j < m; j++) {
if (p[i][j] == -1) {
p[i][j] = 0;
}
}
};
i64 lst = l[o[0]];
int i = 0;
for ( ; i < n && s[o[i]] == s[o[0]]; i++) {
setToZero(o[i]);
}
i64 mxv = lst;
int prev = i - 1;
for (; i < n; i++) {
int t = o[i];
if (r[t] <= lst) {
cout << "No\n";
return;
}
if (l[t] > lst) {
mxv = max(l[t], mxv);
setToZero(t);
} else {
i64 need = lst - l[t] + 1;
for (int j = 0; j < m; j++) {
if (p[t][j] == -1) {
i64 val = min(need, k);
need -= val;
p[t][j] = val;
}
}
}
if (s[o[i]] != s[o[prev + 1]]) {
lst = mxv;
prev = i - 1;
}
}
cout << "Yes\n";
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cout << p[i][j] << " \n"[j == m - 1];
}
}
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t;
cin >> t;
while (t--) {
solve();
}
return 0;
}
详细
Test #1:
score: 0
Wrong Answer
time: 0ms
memory: 3600kb
input:
5 3 4 5 5 1 3 -1 -1 2 -1 5 -1 5 3 3 -1 -1 4 2 3 10 10000 5 0 -1 1 10 10 10 2 3 10 10 1 2 3 100 4 5 6 2 3 10 100 1 2 3 10 4 5 6 2 3 10000 100 -1 -1 -1 1 -1 -1 -1
output:
Yes 1 3 5 2 0 5 0 5 3 4 0 4 No Yes 1 2 3 4 5 6 No Yes 1 0 0 0 0 0
result:
wrong answer Participant cannot satisfy the constraint. (test case 1)