| Task: | Poistot |
| Sender: | MikaelM |
| Submission time: | 2025-01-18 14:36:36 +0200 |
| Language: | C++ (C++17) |
| Status: | READY |
| Result: | 100 |
| group | verdict | score |
|---|---|---|
| #1 | ACCEPTED | 11 |
| #2 | ACCEPTED | 25 |
| #3 | ACCEPTED | 64 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.01 s | 1, 3 | details |
| #2 | ACCEPTED | 0.01 s | 1, 2, 3 | details |
| #3 | ACCEPTED | 0.01 s | 1, 3 | details |
| #4 | ACCEPTED | 0.01 s | 1, 3 | details |
| #5 | ACCEPTED | 0.07 s | 2, 3 | details |
| #6 | ACCEPTED | 0.06 s | 2, 3 | details |
| #7 | ACCEPTED | 0.07 s | 3 | details |
| #8 | ACCEPTED | 0.05 s | 3 | details |
| #9 | ACCEPTED | 0.08 s | 3 | details |
| #10 | ACCEPTED | 0.07 s | 3 | details |
Code
#include<bits/stdc++.h>
using namespace std;
#define all(x) x.begin(),x.end()
using ll = long long;
deque<int> v;
vector<int> ans[200001];
int main() {
ios_base::sync_with_stdio(0); cin.tie(0);
// freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
int n;
cin >> n;
int c = 0;
for (int i = 1; i <= n; i++) {
int x;
cin >> x;
// bool f = false;
// for (int j = 0; j < v.size(); j++) {
// if (x > v[j]) {
// v[j] = x;
// ans[j].push_back(x);
// f = true;
// break;
// }
// }
auto it = upper_bound(all(v), -x);
if (it == v.end()) {
v.push_back(-x);
ans[c++] = {x};
}
else {
int idx = it - v.begin();
v[idx] = -x;
ans[idx].push_back(x);
}
//
// v = {-2, -17, -33, -45, -87}
// x = -47
// if (f) continue;
}
cout << c << "\n";
for (int i = 0; i < c; i++) {
for (int x : ans[i]) cout << x << " ";
cout << "\n";
}
}
/*
{2}
{4}
{4, 3}
{4, 3, 1}
{4, 3, 2}
{5, 3, 2}
{5, 4, 2}
{5}
{5, 4}
{5, 4, 3}
{5, 4, 3, 2}
{5, 4, 3, 2, 1}
{2}
{2, 1}
{3, 1}
{3, 2}
{4, 2}
{4, 2, 1}
{5, 2, 1}
{5, 3, 1}
{66, 57, 44, 31, 17, 2}
x = 46
*/Test details
Test 1
Group: 1, 3
Verdict: ACCEPTED
| input |
|---|
| 1000 447773962 773442532 122816 137... |
| correct output |
|---|
| 53 447773962 773442532 908719430 ... |
| user output |
|---|
| 53 447773962 773442532 908719430 ... Truncated |
Test 2
Group: 1, 2, 3
Verdict: ACCEPTED
| input |
|---|
| 1000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
| correct output |
|---|
| 1000 1 1 1 1 ... |
| user output |
|---|
| 1000 1 1 1 1 ... Truncated |
Test 3
Group: 1, 3
Verdict: ACCEPTED
| input |
|---|
| 1000 1 2 3 4 5 6 7 8 9 10 11 12 13 ... |
| correct output |
|---|
| 1 1 2 3 4 5 6 7 8 9 10 11 12 13 ... |
| user output |
|---|
| 1 1 2 3 4 5 6 7 8 9 10 11 12 13 ... Truncated |
Test 4
Group: 1, 3
Verdict: ACCEPTED
| input |
|---|
| 1000 1000 999 998 997 996 995 994 9... |
| correct output |
|---|
| 1000 1000 999 998 997 ... |
| user output |
|---|
| 1000 1000 999 998 997 ... Truncated |
Test 5
Group: 2, 3
Verdict: ACCEPTED
| input |
|---|
| 200000 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
| correct output |
|---|
| 200000 1 1 1 1 ... |
| user output |
|---|
| 200000 1 1 1 1 ... Truncated |
Test 6
Group: 2, 3
Verdict: ACCEPTED
| input |
|---|
| 200000 5 2 1 10 6 10 5 5 5 4 4 2 3 7 ... |
| correct output |
|---|
| 20776 5 10 2 6 10 1 5 7 9 10 5 7 8 9 10 ... |
| user output |
|---|
| 20776 5 10 2 6 10 1 5 7 9 10 5 7 8 9 10 ... Truncated |
Test 7
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 200000 591414747 75940263 760367935 9... |
| correct output |
|---|
| 879 591414747 760367935 901888417 ... |
| user output |
|---|
| 879 591414747 760367935 901888417 ... Truncated |
Test 8
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 200000 1 2 3 4 5 6 7 8 9 10 11 12 13 ... |
| correct output |
|---|
| 1 1 2 3 4 5 6 7 8 9 10 11 12 13 ... |
| user output |
|---|
| 1 1 2 3 4 5 6 7 8 9 10 11 12 13 ... Truncated |
Test 9
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 200000 200000 199999 199998 199997 19... |
| correct output |
|---|
| 200000 200000 199999 199998 199997 ... |
| user output |
|---|
| 200000 200000 199999 199998 199997 ... Truncated |
Test 10
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 200000 199999 199997 199995 199993 19... |
| correct output |
|---|
| 100000 199999 200000 199997 199998 199995 199996 199993 199994 ... |
| user output |
|---|
| 100000 199999 200000 199997 199998 199995 199996 199993 199994 ... Truncated |
