Submission #285953

#TimeUsernameProblemLanguageResultExecution timeMemory
285953KastandaParrots (IOI11_parrots)C++11
Compilation error
0 ms0 KiB
// M
#include<bits/stdc++.h>
#include "encoder.h"
#include "encoderlib.h"
using namespace std;

const int N = 256, MXN = N * 3, LIM = 7;
int ts1;
vector < int > TMp1, V1[MXN];
void Run1(int nw, int bt)
{
        if (nw >= bt)
                return void(V1[ts1 ++] = TMp1);
        for (int i = 0; (int)TMp1.size() + i <= LIM; i ++)
        {
                for (int j = 0; j < i; j ++)
                        TMp1.push_back(nw);
                Run1(nw + 1, bt);
                for (int j = 0; j < i; j ++)
                        TMp1.pop_back();
        }
}
void Generate1(int lg)
{
        ts1 = 0;
        int bts = 8 - lg;
        int k = 1 << bts;

        Run1(0, k);
        assert(ts1 >= N);
        sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
}

void encode(int n, int B[])
{
        int lg = 6;
        if (n <= 32)
                lg = 5;

        vector < int > A(n);
        for (int i = 0; i < n; i ++)
                A[i] = B[i];

        Generate1(lg);

        for (int i = 1; i < n; i ++)
                A[i] = A[i] ^ A[i - 1];

        for (int i = 0; i < n; i ++)
                for (int a : V1[A[i]])
                        send((a << lg) | i);
}
// M
#include<bits/stdc++.h>
#include "decoder.h"
#include "decoderlib.h"
using namespace std;

const int N = 256, MXN = N * 2, LIM = 7;
int ts2;
vector < int > TMp2, V2[MXN];
map < vector < int > , int > MP;
void Run2(int nw, int bt)
{
        if (nw >= bt)
                return void(V2[ts2 ++] = TMp2);
        for (int i = 0; (int)TMp2.size() + i <= LIM; i ++)
        {
                for (int j = 0; j < i; j ++)
                        TMp2.push_back(nw);
                Run2(nw + 1, bt);
                for (int j = 0; j < i; j ++)
                        TMp2.pop_back();
        }
}
void Generate2(int lg)
{
        ts2 = 0;
        int bts = 8 - lg;
        int k = 1 << bts;

        Run2(0, k);
        assert(ts2 >= N);
        sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
        for (int i = 0; i < N; i ++)
                MP[V2[i]] = i;
}
void decode(int n, int L, int X[])
{
        int lg = 6;
        if (n <= 32)
                lg = 5;

        Generate2(lg);

        vector < int > vec[64];
        for (int i = 0; i < L; i ++)
                vec[(X[i] & ((1 << lg) - 1))].push_back(X[i] >> lg);

        vector < int > A(n, 0);
        for (int i = 0; i < n; i ++)
        {
                sort(vec[i].begin(), vec[i].end());
                A[i] = MP[vec[i]];
        }

        for (int i = n - 1; i; i --)
                A[i] ^= A[i - 1];

        for (int i = 0; i < n; i ++)
                output(A[i]);
}

Compilation message (stderr)

encoder.cpp: In function 'void Generate1(int)':
encoder.cpp:31:32: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   31 |         sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                ^~~~
encoder.cpp:31:40: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   31 |         sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                        ^~~~
encoder.cpp: In lambda function:
encoder.cpp:31:57: error: request for member 'size' in 'X', which is of non-class type 'int'
   31 |         sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                                         ^~~~
encoder.cpp:31:68: error: request for member 'size' in 'Y', which is of non-class type 'int'
   31 |         sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                                                    ^~~~
In file included from /usr/include/c++/9/bits/stl_algobase.h:71,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from encoder.cpp:2:
/usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_comp_iter<_Compare>::operator()(_Iterator1, _Iterator2) [with _Iterator1 = std::vector<int>*; _Iterator2 = std::vector<int>*; _Compare = Generate1(int)::<lambda(int, int)>]':
/usr/include/c++/9/bits/stl_algo.h:1846:14:   required from 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1884:25:   required from 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1970:31:   required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:4899:18:   required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = std::vector<int>*; _Compare = Generate1(int)::<lambda(int, int)>]'
encoder.cpp:31:76:   required from here
/usr/include/c++/9/bits/predefined_ops.h:143:18: error: no match for call to '(Generate1(int)::<lambda(int, int)>) (std::vector<int>&, std::vector<int>&)'
  143 |         { return bool(_M_comp(*__it1, *__it2)); }
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encoder.cpp:31:28: note: candidate: 'Generate1(int)::<lambda(int, int)>'
   31 |         sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
      |                            ^
encoder.cpp:31:28: note:   no known conversion for argument 1 from 'std::vector<int>' to 'int'
In file included from /usr/include/c++/9/bits/stl_algobase.h:71,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from encoder.cpp:2:
/usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Val_comp_iter<_Compare>::operator()(_Value&, _Iterator) [with _Value = std::vector<int>; _Iterator = std::vector<int>*; _Compare = Generate1(int)::<lambda(int, int)>]':
/usr/include/c++/9/bits/stl_algo.h:1827:20:   required from 'void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Val_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1854:36:   required from 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1884:25:   required from 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1970:31:   required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:4899:18:   required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = std::vector<int>*; _Compare = Generate1(int)::<lambda(int, int)>]'
encoder.cpp:31:76:   required from here
/usr/include/c++/9/bits/predefined_ops.h:215:11: error: no match for call to '(Generate1(int)::<lambda(int, int)>) (std::vector<int>&, std::vector<int>&)'
  215 |  { return bool(_M_comp(__val, *__it)); }
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
encoder.cpp:31:28: note: candidate: 'Generate1(int)::<lambda(int, int)>'
   31 |         sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
      |                            ^
encoder.cpp:31:28: note:   no known conversion for argument 1 from 'std::vector<int>' to 'int'
In file included from /usr/include/c++/9/bits/stl_algobase.h:71,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from encoder.cpp:2:
/usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_comp_val<_Compare>::operator()(_Iterator, _Value&) [with _Iterator = std::vector<int>*; _Value = std::vector<int>; _Compare = Generate1(int)::<lambda(int, int)>]':
/usr/include/c++/9/bits/stl_heap.h:133:48:   required from 'void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = std::vector<int>*; _Distance = long int; _Tp = std::vector<int>; _Compare = __gnu_cxx::__ops::_Iter_comp_val<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_heap.h:237:23:   required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Distance = long int; _Tp = std::vector<int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_heap.h:342:22:   required from 'void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1671:23:   required from 'void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1932:25:   required from 'void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1947:27:   required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1967:25:   required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate1(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:4899:18:   required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = std::vector<int>*; _Compare = Generate1(int)::<lambda(int, int)>]'
encoder.cpp:31:76:   required from here
/usr/include/c++/9/bits/predefined_ops.h:177:11: error: no match for call to '(Generate1(int)::<lambda(int, int)>) (std::vector<int>&, std::vector<int>&)'
  177 |  { return bool(_M_comp(*__it, __val)); }
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
encoder.cpp:31:28: note: candidate: 'Generate1(int)::<lambda(int, int)>'
   31 |         sort(V1, V1 + ts1, [&](auto X, auto Y){return X.size() < Y.size();});
      |                            ^
encoder.cpp:31:28: note:   no known conversion for argument 1 from 'std::vector<int>' to 'int'

decoder.cpp: In function 'void Generate2(int)':
decoder.cpp:32:32: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   32 |         sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                ^~~~
decoder.cpp:32:40: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   32 |         sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                        ^~~~
decoder.cpp: In lambda function:
decoder.cpp:32:57: error: request for member 'size' in 'X', which is of non-class type 'int'
   32 |         sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                                         ^~~~
decoder.cpp:32:68: error: request for member 'size' in 'Y', which is of non-class type 'int'
   32 |         sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
      |                                                                    ^~~~
In file included from /usr/include/c++/9/bits/stl_algobase.h:71,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from decoder.cpp:2:
/usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_comp_iter<_Compare>::operator()(_Iterator1, _Iterator2) [with _Iterator1 = std::vector<int>*; _Iterator2 = std::vector<int>*; _Compare = Generate2(int)::<lambda(int, int)>]':
/usr/include/c++/9/bits/stl_algo.h:1846:14:   required from 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1884:25:   required from 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1970:31:   required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:4899:18:   required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = std::vector<int>*; _Compare = Generate2(int)::<lambda(int, int)>]'
decoder.cpp:32:76:   required from here
/usr/include/c++/9/bits/predefined_ops.h:143:18: error: no match for call to '(Generate2(int)::<lambda(int, int)>) (std::vector<int>&, std::vector<int>&)'
  143 |         { return bool(_M_comp(*__it1, *__it2)); }
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
decoder.cpp:32:28: note: candidate: 'Generate2(int)::<lambda(int, int)>'
   32 |         sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
      |                            ^
decoder.cpp:32:28: note:   no known conversion for argument 1 from 'std::vector<int>' to 'int'
In file included from /usr/include/c++/9/bits/stl_algobase.h:71,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from decoder.cpp:2:
/usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Val_comp_iter<_Compare>::operator()(_Value&, _Iterator) [with _Value = std::vector<int>; _Iterator = std::vector<int>*; _Compare = Generate2(int)::<lambda(int, int)>]':
/usr/include/c++/9/bits/stl_algo.h:1827:20:   required from 'void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Val_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1854:36:   required from 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1884:25:   required from 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1970:31:   required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:4899:18:   required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = std::vector<int>*; _Compare = Generate2(int)::<lambda(int, int)>]'
decoder.cpp:32:76:   required from here
/usr/include/c++/9/bits/predefined_ops.h:215:11: error: no match for call to '(Generate2(int)::<lambda(int, int)>) (std::vector<int>&, std::vector<int>&)'
  215 |  { return bool(_M_comp(__val, *__it)); }
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
decoder.cpp:32:28: note: candidate: 'Generate2(int)::<lambda(int, int)>'
   32 |         sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
      |                            ^
decoder.cpp:32:28: note:   no known conversion for argument 1 from 'std::vector<int>' to 'int'
In file included from /usr/include/c++/9/bits/stl_algobase.h:71,
                 from /usr/include/c++/9/bits/char_traits.h:39,
                 from /usr/include/c++/9/ios:40,
                 from /usr/include/c++/9/istream:38,
                 from /usr/include/c++/9/sstream:38,
                 from /usr/include/c++/9/complex:45,
                 from /usr/include/c++/9/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54,
                 from decoder.cpp:2:
/usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_comp_val<_Compare>::operator()(_Iterator, _Value&) [with _Iterator = std::vector<int>*; _Value = std::vector<int>; _Compare = Generate2(int)::<lambda(int, int)>]':
/usr/include/c++/9/bits/stl_heap.h:133:48:   required from 'void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = std::vector<int>*; _Distance = long int; _Tp = std::vector<int>; _Compare = __gnu_cxx::__ops::_Iter_comp_val<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_heap.h:237:23:   required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Distance = long int; _Tp = std::vector<int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_heap.h:342:22:   required from 'void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1671:23:   required from 'void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1932:25:   required from 'void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1947:27:   required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:1967:25:   required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = std::vector<int>*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<Generate2(int)::<lambda(int, int)> >]'
/usr/include/c++/9/bits/stl_algo.h:4899:18:   required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = std::vector<int>*; _Compare = Generate2(int)::<lambda(int, int)>]'
decoder.cpp:32:76:   required from here
/usr/include/c++/9/bits/predefined_ops.h:177:11: error: no match for call to '(Generate2(int)::<lambda(int, int)>) (std::vector<int>&, std::vector<int>&)'
  177 |  { return bool(_M_comp(*__it, __val)); }
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
decoder.cpp:32:28: note: candidate: 'Generate2(int)::<lambda(int, int)>'
   32 |         sort(V2, V2 + ts2, [&](auto X, auto Y){return X.size() < Y.size();});
      |                            ^
decoder.cpp:32:28: note:   no known conversion for argument 1 from 'std::vector<int>' to 'int'