3342 | 2023. 02. 26 13:43:54 | 1478 | Kombináció (50) | cpp17 | Elfogadva 50/50 | 3ms | 3868 KiB |
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
#define mp make_pair
#define fi first
#define se second
int n, m;
vector<bool> is;
vector<bool> ans;
void solve() {
cin >> n >> m;
is.assign(1 + n, false);
for(int i = 0; i < m; i++) {
int x;
cin >> x;
is[x] = true;
}
ans.assign(1 + n, false);
bool ok = false;
for(int i = 1; i <= m; i++) {
if(!is[i]) {
ok = true;
}
}
if(!ok) {
for(int i = n; i >= n - m + 1; i--) {
ans[i] = true;
}
} else {
int pos = 0;
for(int i = n; i >= 1; i--) {
if(is[i] && !is[i - 1]) {
ans = is;
ans[i] = false;
ans[i - 1] = true;
pos = i;
break;
}
}
int cnt = 0;
for(int i = pos; i <= n; i++) {
if(ans[i]) {
cnt++;
}
ans[i] = 0;
}
for(int i = n; i >= n - cnt + 1; i--) {
ans[i] = 1;
}
}
for(int i = 1; i <= n; i++) {
if(ans[i]) {
cout << i << " ";
}
}
cout << "\n";
ans.assign(1 + n, false);
ok = false;
for(int i = n; i >= n - m + 1; i--) {
if(!is[i]) {
ok = true;
}
}
if(!ok) {
for(int i = 1; i <= m; i++) {
ans[i] = true;
}
} else {
int pos = 0;
for(int i = n; i >= 1; i--) {
if(!is[i] && is[i - 1]) {
ans = is;
ans[i] = true;
ans[i - 1] = false;
pos = i + 1;
break;
}
}
int cnt = 0;
for(int i = pos; i <= n; i++) {
if(ans[i]) {
cnt++;
}
ans[i] = 0;
}
for(int i = pos; i <= pos + cnt - 1; i++) {
ans[i] = 1;
}
}
for(int i = 1; i <= n; i++) {
if(ans[i]) {
cout << i << " ";
}
}
cout << "\n";
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
solve();
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1892 KiB | |||
2 | Elfogadva | 0/0 | 3ms | 2116 KiB | |||
3 | Elfogadva | 2/2 | 3ms | 2456 KiB | |||
4 | Elfogadva | 2/2 | 3ms | 2684 KiB | |||
5 | Elfogadva | 2/2 | 3ms | 2732 KiB | |||
6 | Elfogadva | 2/2 | 3ms | 2960 KiB | |||
7 | Elfogadva | 2/2 | 3ms | 3180 KiB | |||
8 | Elfogadva | 2/2 | 3ms | 3280 KiB | |||
9 | Elfogadva | 2/2 | 3ms | 3320 KiB | |||
10 | Elfogadva | 4/4 | 3ms | 3316 KiB | |||
11 | Elfogadva | 4/4 | 3ms | 3316 KiB | |||
12 | Elfogadva | 4/4 | 3ms | 3440 KiB | |||
13 | Elfogadva | 4/4 | 3ms | 3524 KiB | |||
14 | Elfogadva | 4/4 | 3ms | 3532 KiB | |||
15 | Elfogadva | 4/4 | 3ms | 3528 KiB | |||
16 | Elfogadva | 6/6 | 3ms | 3660 KiB | |||
17 | Elfogadva | 6/6 | 3ms | 3868 KiB |