QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#423783 | #3230. Beautiful Now | qypnf | 0 | 1ms | 3624kb | C++14 | 1.7kb | 2024-05-28 16:33:31 | 2024-05-28 16:33:31 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
void mn (vector < int > a, int k) {
auto b = a;
sort(b.begin(), b.end());
for (int i = 0; i < a.size(); ++i) {
if (b[i]) {
swap(b[0], b[i]);
break;
}
}
set < int > p[10];
for (int i = 0; i < a.size(); ++i)
p[a[i]].insert(i);
for (int i = 0; i < a.size() && k; ++i) {
if (a[i] != b[i]) {
int x = *(p[b[i]].begin());
p[a[i]].erase(i);
p[b[i]].erase(x);
p[b[i]].insert(i);
p[a[i]].insert(x);
swap(a[i], a[x]);
k--;
}
}
for (int i : a)
cout << i;
cout << " ";
}
void mx (vector < int > a, int k) {
auto b = a;
sort(b.begin(), b.end());
reverse(b.begin(), b.end());
set < int > p[10];
for (int i = 0; i < a.size(); ++i)
p[a[i]].insert(i);
for (int i = 0; i < a.size() && k; ++i) {
if (a[i] != b[i]) {
int x = *(--p[b[i]].end());
p[a[i]].erase(i);
p[b[i]].erase(x);
p[b[i]].insert(i);
p[a[i]].insert(x);
swap(a[i], a[x]);
k--;
}
}
for (int i : a)
cout << i;
cout << " ";
}
void slv () {
int n, k;
cin >> n >> k;
vector < int > a;
while (n) {
a.push_back(n % 10);
n /= 10;
}
reverse(a.begin(), a.end());
mn(a, k);
mx(a, k);
}
int32_t main () {
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
int test = 1;
cin >> test;
while (test--) {
slv();
cout << "\n";
}
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 0
Wrong Answer
time: 1ms
memory: 3624kb
input:
100 645637224 8 397815246 8 239758591 7 152472214 2 485635752 8 128947635 5 938124675 8 311384311 8 665595968 7 284675191 6 3596920 776160768 428993752 4 796354812 4 342871569 7 952970714 2 399469166 8 774997047 1 534968712 5 574918236 3 564999511 645561291 791543286 7 171222224 7 319647582 2 241573...
output:
223445667 766544322 123456789 987654321 123557899 998755321 514272214 754412212 234855675 876555432 123456789 987652134 123456789 987654321 111133348 843331111 595566869 998666555 812456791 987654211 2035699 9965320 923498752 998753242 123456879 987654312 123456789 987654312 102975794 ...
result:
wrong answer 4th lines differ - expected: '112272454 754412212', found: '514272214 754412212 '