제출 #1252142

#제출 시각아이디문제언어결과실행 시간메모리
1252142bzzzzzzzzzz선물 (IOI25_souvenirs)C++20
컴파일 에러
0 ms0 KiB
transaction(P0 - s - 2);#include <bits/stdc++.h> #include "souvenirs.h" using namespace std; using ll = long long; void buy_souvenirs(int N, long long P0) { if (N == 2) { pair<vector<int>, ll> p = transaction(P0 - 1); } else if (N == 3) { auto[v, s] = transaction(P0 - 1); if ((int)v.size() == 1) { transaction(P0 - s - 2); transaction(P0 - s - 2); } else { transaction((P0 - 1 - s) / 2); } } else { for (int i = 1; i < N; i++) { for (int j = 0; j < i; j++) { transaction(N - i); } } } }

컴파일 시 표준 에러 (stderr) 메시지

souvenirs.cpp:1:25: error: stray '#' in program
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                         ^
souvenirs.cpp:1:12: error: expected constructor, destructor, or type conversion before '(' token
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |            ^
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:35: error: 'bits' was not declared in this scope
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                   ^~~~
souvenirs.cpp:1:40: error: 'stdc' was not declared in this scope; did you mean 'std'?
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                                        ^~~~
      |                                        std
souvenirs.cpp:1:26: error: 'include' does not name a type
    1 | transaction(P0 - s - 2);#include <bits/stdc++.h>
      |                          ^~~~~~~
In file included from /usr/include/c++/11/bits/move.h:57,
                 from /usr/include/c++/11/bits/stl_pair.h:59,
                 from /usr/include/c++/11/utility:70,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/type_traits:227:27: error: 'size_t' has not been declared
  227 |   template <typename _Tp, size_t = sizeof(_Tp)>
      |                           ^~~~~~
/usr/include/c++/11/type_traits:431:26: error: 'std::size_t' has not been declared
  431 |   template<typename _Tp, std::size_t _Size>
      |                          ^~~
/usr/include/c++/11/type_traits:432:25: error: '_Size' was not declared in this scope
  432 |     struct is_array<_Tp[_Size]>
      |                         ^~~~~
/usr/include/c++/11/type_traits:432:31: error: template argument 1 is invalid
  432 |     struct is_array<_Tp[_Size]>
      |                               ^
/usr/include/c++/11/type_traits:537:42: error: 'nullptr_t' is not a member of 'std'
  537 |     struct __is_null_pointer_helper<std::nullptr_t>
      |                                          ^~~~~~~~~
/usr/include/c++/11/type_traits:537:51: error: template argument 1 is invalid
  537 |     struct __is_null_pointer_helper<std::nullptr_t>
      |                                                   ^
/usr/include/c++/11/type_traits:1361:37: error: 'size_t' is not a member of 'std'
 1361 |     : public integral_constant<std::size_t, alignof(_Tp)>
      |                                     ^~~~~~
/usr/include/c++/11/type_traits:1361:57: error: template argument 1 is invalid
 1361 |     : public integral_constant<std::size_t, alignof(_Tp)>
      |                                                         ^
/usr/include/c++/11/type_traits:1370:37: error: 'size_t' is not a member of 'std'
 1370 |     : public integral_constant<std::size_t, 0> { };
      |                                     ^~~~~~
/usr/include/c++/11/type_traits:1370:46: error: template argument 1 is invalid
 1370 |     : public integral_constant<std::size_t, 0> { };
      |                                              ^
/usr/include/c++/11/type_traits:1372:26: error: 'std::size_t' has not been declared
 1372 |   template<typename _Tp, std::size_t _Size>
      |                          ^~~
/usr/include/c++/11/type_traits:1373:21: error: '_Size' was not declared in this scope
 1373 |     struct rank<_Tp[_Size]>
      |                     ^~~~~
/usr/include/c++/11/type_traits:1373:27: error: template argument 1 is invalid
 1373 |     struct rank<_Tp[_Size]>
      |                           ^
/usr/include/c++/11/type_traits:1374:37: error: 'size_t' is not a member of 'std'
 1374 |     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
      |                                     ^~~~~~
/usr/include/c++/11/type_traits:1374:65: error: template argument 1 is invalid
 1374 |     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
      |                                                                 ^
/usr/include/c++/11/type_traits:1378:37: error: 'size_t' is not a member of 'std'
 1378 |     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
      |                                     ^~~~~~
/usr/include/c++/11/type_traits:1378:65: error: template argument 1 is invalid
 1378 |     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
      |                                                                 ^
/usr/include/c++/11/type_traits:1383:37: error: 'size_t' is not a member of 'std'
 1383 |     : public integral_constant<std::size_t, 0> { };
      |                                     ^~~~~~
/usr/include/c++/11/type_traits:1383:46: error: template argument 1 is invalid
 1383 |     : public integral_constant<std::size_t, 0> { };
      |                                              ^
/usr/include/c++/11/type_traits:1385:42: error: 'std::size_t' has not been declared
 1385 |   template<typename _Tp, unsigned _Uint, std::size_t _Size>
      |                                          ^~~
/usr/include/c++/11/type_traits:1386:23: error: '_Size' was not declared in this scope
 1386 |     struct extent<_Tp[_Size], _Uint>
      |                       ^~~~~
/usr/include/c++/11/type_traits:1386:36: error: template argument 1 is invalid
 1386 |     struct extent<_Tp[_Size], _Uint>
      |                                    ^
/usr/include/c++/11/type_traits:1387:37: error: 'size_t' is not a member of 'std'
 1387 |     : public integral_constant<std::size_t,
      |                                     ^~~~~~
/usr/include/c++/11/type_traits:1388:45: error: '_Size' was not declared in this scope
 1388 |                                _Uint == 0 ? _Size : extent<_Tp,
      |                                             ^~~~~
/usr/include/c++/11/type_traits:1389:77: error: template argument 1 is invalid
 1389 |                                                            _Uint - 1>::value>
      |                                                                             ^
/usr/include/c++/11/type_traits:1394:37: error: 'size_t' is not a member of 'std'
 1394 |     : public integral_constant<std::size_t,
      |                                     ^~~~~~
/usr/include/c++/11/type_traits:1396:73: error: template argument 1 is invalid
 1396 |                                                        _Uint - 1>::value>
      |                                                                         ^
/usr/include/c++/11/type_traits:1759:26: error: 'size_t' does not name a type
 1759 |       { static constexpr size_t __size = sizeof(_Tp); };
      |                          ^~~~~~
In file included from /usr/include/c++/11/bits/move.h:57,
                 from /usr/include/c++/11/bits/stl_pair.h:59,
                 from /usr/include/c++/11/utility:70,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/type_traits:1:1: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
  +++ |+#include <cstddef>
    1 | // C++11 <type_traits> -*- C++ -*-
In file included from /usr/include/c++/11/bits/move.h:57,
                 from /usr/include/c++/11/bits/stl_pair.h:59,
                 from /usr/include/c++/11/utility:70,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/type_traits:1761:14: error: 'size_t' has not been declared
 1761 |     template<size_t _Sz, typename _Tp, bool = (_Sz <= _Tp::__size)>
      |              ^~~~~~
/usr/include/c++/11/type_traits:1761:48: error: '_Sz' was not declared in this scope
 1761 |     template<size_t _Sz, typename _Tp, bool = (_Sz <= _Tp::__size)>
      |                                                ^~~
/usr/include/c++/11/type_traits:1762:14: error: no default argument for '_Tp'
 1762 |       struct __select;
      |              ^~~~~~~~
/usr/include/c++/11/type_traits:1764:14: error: 'size_t' has not been declared
 1764 |     template<size_t _Sz, typename _Uint, typename... _UInts>
      |              ^~~~~~
/usr/include/c++/11/type_traits:1765:23: error: '_Sz' was not declared in this scope
 1765 |       struct __select<_Sz, _List<_Uint, _UInts...>, true>
      |                       ^~~
/usr/include/c++/11/type_traits:1765:57: error: template argument 1 is invalid
 1765 |       struct __select<_Sz, _List<_Uint, _UInts...>, true>
      |                                                         ^
/usr/include/c++/11/type_traits:1768:14: error: 'size_t' has not been declared
 1768 |     template<size_t _Sz, typename _Uint, typename... _UInts>
      |              ^~~~~~
/usr/include/c++/11/type_traits:1769:23: error: '_Sz' was not declared in this scope
 1769 |       struct __select<_Sz, _List<_Uint, _UInts...>, false>
      |                       ^~~
/usr/include/c++/11/type_traits:1769:58: error: template argument 1 is invalid
 1769 |       struct __select<_Sz, _List<_Uint, _UInts...>, false>
      |                                                          ^
/usr/include/c++/11/type_traits:1770:18: error: '_Sz' was not declared in this scope
 1770 |       : __select<_Sz, _List<_UInts...>>
      |                  ^~~
/usr/include/c++/11/type_traits:1770:38: error: template argument 1 is invalid
 1770 |       : __select<_Sz, _List<_UInts...>>
      |                                      ^~
/usr/include/c++/11/type_traits:1761:60: error: '__size' is not a member of 'std::__make_unsigned_selector_base::_List<unsigned char, short unsigned int, unsigned int, long unsigned int, long long unsigned int>'
 1761 |     template<size_t _Sz, typename _Tp, bool = (_Sz <= _Tp::__size)>
      |                                                            ^~~~~~
/usr/include/c++/11/type_traits:1783:68: error: template argument 3 is invalid
 1783 |       using __unsigned_type = typename __select<sizeof(_Tp), _UInts>::__type;
      |                                                                    ^
/usr/include/c++/11/type_traits:1787:47: error: '__unsigned_type' was not declared in this scope
 1787 |         = typename __match_cv_qualifiers<_Tp, __unsigned_type>::__type;
      |                                               ^~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1787:62: error: template argument 2 is invalid
 1787 |         = typename __match_cv_qualifiers<_Tp, __unsigned_type>::__type;
      |                                                              ^
/usr/include/c++/11/type_traits:1799:68: error: '__type' in 'class std::__make_unsigned_selector<wchar_t, false, true>' does not name a type
 1799 |         = typename __make_unsigned_selector<wchar_t, false, true>::__type;
      |                                                                    ^~~~~~
/usr/include/c++/11/type_traits:1808:68: error: '__type' in 'class std::__make_unsigned_selector<char8_t, false, true>' does not name a type
 1808 |         = typename __make_unsigned_selector<char8_t, false, true>::__type;
      |                                                                    ^~~~~~
/usr/include/c++/11/type_traits:1816:69: error: '__type' in 'class std::__make_unsigned_selector<char16_t, false, true>' does not name a type
 1816 |         = typename __make_unsigned_selector<char16_t, false, true>::__type;
      |                                                                     ^~~~~~
/usr/include/c++/11/type_traits:1823:69: error: '__type' in 'class std::__make_unsigned_selector<char32_t, false, true>' does not name a type
 1823 |         = typename __make_unsigned_selector<char32_t, false, true>::__type;
      |                                                                     ^~~~~~
/usr/include/c++/11/type_traits: In instantiation of 'class std::__make_unsigned_selector<wchar_t, true, false>':
/usr/include/c++/11/type_traits:1912:62:   required from 'class std::__make_signed_selector<wchar_t, false, true>'
/usr/include/c++/11/type_traits:1927:57:   required from here
/usr/include/c++/11/type_traits:1744:13: error: no type named '__type' in 'struct std::__make_unsigned<wchar_t>'
 1744 |       using __unsigned_type
      |             ^~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1748:13: error: no type named '__type' in 'struct std::__make_unsigned<wchar_t>'
 1748 |       using __type
      |             ^~~~~~
/usr/include/c++/11/type_traits:1927:66: error: invalid combination of multiple type-specifiers
 1927 |         = typename __make_signed_selector<wchar_t, false, true>::__type;
      |                                                                  ^~~~~~
/usr/include/c++/11/type_traits: In instantiation of 'class std::__make_unsigned_selector<char8_t, true, false>':
/usr/include/c++/11/type_traits:1912:62:   required from 'class std::__make_signed_selector<char8_t, false, true>'
/usr/include/c++/11/type_traits:1936:57:   required from here
/usr/include/c++/11/type_traits:1744:13: error: no type named '__type' in 'struct std::__make_unsigned<char8_t>'
 1744 |       using __unsigned_type
      |             ^~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1748:13: error: no type named '__type' in 'struct std::__make_unsigned<char8_t>'
 1748 |       using __type
      |             ^~~~~~
/usr/include/c++/11/type_traits:1936:66: error: invalid combination of multiple type-specifiers
 1936 |         = typename __make_signed_selector<char8_t, false, true>::__type;
      |                                                                  ^~~~~~
/usr/include/c++/11/type_traits: In instantiation of 'class std::__make_unsigned_selector<char16_t, true, false>':
/usr/include/c++/11/type_traits:1912:62:   required from 'class std::__make_signed_selector<char16_t, false, true>'
/usr/include/c++/11/type_traits:1944:58:   required from here
/usr/include/c++/11/type_traits:1744:13: error: no type named '__type' in 'struct std::__make_unsigned<char16_t>'
 1744 |       using __unsigned_type
      |             ^~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1748:13: error: no type named '__type' in 'struct std::__make_unsigned<char16_t>'
 1748 |       using __type
      |             ^~~~~~
/usr/include/c++/11/type_traits:1944:67: error: invalid combination of multiple type-specifiers
 1944 |         = typename __make_signed_selector<char16_t, false, true>::__type;
      |                                                                   ^~~~~~
/usr/include/c++/11/type_traits: In instantiation of 'class std::__make_unsigned_selector<char32_t, true, false>':
/usr/include/c++/11/type_traits:1912:62:   required from 'class std::__make_signed_selector<char32_t, false, true>'
/usr/include/c++/11/type_traits:1951:58:   required from here
/usr/include/c++/11/type_traits:1744:13: error: no type named '__type' in 'struct std::__make_unsigned<char32_t>'
 1744 |       using __unsigned_type
      |             ^~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:1748:13: error: no type named '__type' in 'struct std::__make_unsigned<char32_t>'
 1748 |       using __type
      |             ^~~~~~
/usr/include/c++/11/type_traits:1951:67: error: invalid combination of multiple type-specifiers
 1951 |         = typename __make_signed_selector<char32_t, false, true>::__type;
      |                                                                   ^~~~~~
/usr/include/c++/11/type_traits:1984:26: error: 'std::size_t' has not been declared
 1984 |   template<typename _Tp, std::size_t _Size>
      |                          ^~~
/usr/include/c++/11/type_traits:1985:30: error: '_Size' was not declared in this scope
 1985 |     struct remove_extent<_Tp[_Size]>
      |                              ^~~~~
/usr/include/c++/11/type_traits:1985:36: error: template argument 1 is invalid
 1985 |     struct remove_extent<_Tp[_Size]>
      |                                    ^
/usr/include/c++/11/type_traits:1997:26: error: 'std::size_t' has not been declared
 1997 |   template<typename _Tp, std::size_t _Size>
      |                          ^~~
/usr/include/c++/11/type_traits:1998:35: error: '_Size' was not declared in this scope
 1998 |     struct remove_all_extents<_Tp[_Size]>
      |                                   ^~~~~
/usr/include/c++/11/type_traits:1998:41: error: template argument 1 is invalid
 1998 |     struct remove_all_extents<_Tp[_Size]>
      |                                         ^
/usr/include/c++/11/type_traits:2056:12: error: 'std::size_t' has not been declared
 2056 |   template<std::size_t _Len>
      |            ^~~
/usr/include/c++/11/type_traits:2061:30: error: '_Len' was not declared in this scope
 2061 |         unsigned char __data[_Len];
      |                              ^~~~
/usr/include/c++/11/type_traits:2076:12: error: 'std::size_t' has not been declared
 2076 |   template<std::size_t _Len, std::size_t _Align =
      |            ^~~
/usr/include/c++/11/type_traits:2076:30: error: 'std::size_t' has not been declared
 2076 |   template<std::size_t _Len, std::size_t _Align =
      |                              ^~~
/usr/include/c++/11/type_traits:2077:55: error: '_Len' was not declared in this scope
 2077 |            __alignof__(typename __aligned_storage_msa<_Len>::__type)>
      |                                                       ^~~~
/usr/include/c++/11/type_traits:2077:59: error: template argument 1 is invalid
 2077 |            __alignof__(typename __aligned_storage_msa<_Len>::__type)>
      |                                                           ^
/usr/include/c++/11/type_traits:2082:30: error: '_Len' was not declared in this scope
 2082 |         unsigned char __data[_Len];
      |                              ^~~~
/usr/include/c++/11/type_traits:2083:44: error: '_Align' was not declared in this scope
 2083 |         struct __attribute__((__aligned__((_Align)))) { } __align;
      |                                            ^~~~~~
/usr/include/c++/11/type_traits:2090:20: error: 'size_t' does not name a type
 2090 |       static const size_t _S_alignment = 0;
      |                    ^~~~~~
/usr/include/c++/11/type_traits:2090:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:2091:20: error: 'size_t' does not name a type
 2091 |       static const size_t _S_size = 0;
      |                    ^~~~~~
/usr/include/c++/11/type_traits:2091:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:2097:20: error: 'size_t' does not name a type
 2097 |       static const size_t _S_alignment =
      |                    ^~~~~~
/usr/include/c++/11/type_traits:2097:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:2100:20: error: 'size_t' does not name a type
 2100 |       static const size_t _S_size =
      |                    ^~~~~~
/usr/include/c++/11/type_traits:2100:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:2115:13: error: 'size_t' has not been declared
 2115 |   template <size_t _Len, typename... _Types>
      |             ^~~~~~
/usr/include/c++/11/type_traits:2122:20: error: 'size_t' does not name a type
 2122 |       static const size_t _S_len = _Len > __strictest::_S_size
      |                    ^~~~~~
/usr/include/c++/11/type_traits:2122:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:2126:20: error: 'size_t' does not name a type
 2126 |       static const size_t alignment_value = __strictest::_S_alignment;
      |                    ^~~~~~
/usr/include/c++/11/type_traits:2126:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:2128:40: error: '_S_len' was not declared in this scope
 2128 |       typedef typename aligned_storage<_S_len, alignment_value>::type type;
      |                                        ^~~~~~
/usr/include/c++/11/type_traits:2128:48: error: 'alignment_value' was not declared in this scope; did you mean 'alignment_of'?
 2128 |       typedef typename aligned_storage<_S_len, alignment_value>::type type;
      |                                                ^~~~~~~~~~~~~~~
      |                                                alignment_of
/usr/include/c++/11/type_traits:2128:63: error: template argument 1 is invalid
 2128 |       typedef typename aligned_storage<_S_len, alignment_value>::type type;
      |                                                               ^
/usr/include/c++/11/type_traits:2128:63: error: template argument 2 is invalid
/usr/include/c++/11/type_traits:2131:13: error: 'size_t' has not been declared
 2131 |   template <size_t _Len, typename... _Types>
      |             ^~~~~~
/usr/include/c++/11/type_traits:2132:11: error: 'size_t' does not name a type
 2132 |     const size_t aligned_union<_Len, _Types...>::alignment_value;
      |           ^~~~~~
/usr/include/c++/11/type_traits:2132:11: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:2566:12: error: 'size_t' has not been declared
 2566 |   template<size_t _Len, size_t _Align =
      |            ^~~~~~
/usr/include/c++/11/type_traits:2566:25: error: 'size_t' has not been declared
 2566 |   template<size_t _Len, size_t _Align =
      |                         ^~~~~~
/usr/include/c++/11/type_traits:2567:56: error: '_Len' was not declared in this scope
 2567 |             __alignof__(typename __aligned_storage_msa<_Len>::__type)>
      |                                                        ^~~~
/usr/include/c++/11/type_traits:2567:60: error: template argument 1 is invalid
 2567 |             __alignof__(typename __aligned_storage_msa<_Len>::__type)>
      |                                                            ^
/usr/include/c++/11/type_traits:2568:56: error: '_Len' was not declared in this scope
 2568 |     using aligned_storage_t = typename aligned_storage<_Len, _Align>::type;
      |                                                        ^~~~
/usr/include/c++/11/type_traits:2568:62: error: '_Align' was not declared in this scope
 2568 |     using aligned_storage_t = typename aligned_storage<_Len, _Align>::type;
      |                                                              ^~~~~~
/usr/include/c++/11/type_traits:2568:68: error: template argument 1 is invalid
 2568 |     using aligned_storage_t = typename aligned_storage<_Len, _Align>::type;
      |                                                                    ^
/usr/include/c++/11/type_traits:2568:68: error: template argument 2 is invalid
/usr/include/c++/11/type_traits:2570:13: error: 'size_t' has not been declared
 2570 |   template <size_t _Len, typename... _Types>
      |             ^~~~~~
/usr/include/c++/11/type_traits:2571:52: error: '_Len' was not declared in this scope
 2571 |     using aligned_union_t = typename aligned_union<_Len, _Types...>::type;
      |                                                    ^~~~
/usr/include/c++/11/type_traits:2571:67: error: template argument 1 is invalid
 2571 |     using aligned_union_t = typename aligned_union<_Len, _Types...>::type;
      |                                                                   ^
/usr/include/c++/11/type_traits:2680:26: error: 'size_t' has not been declared
 2680 |   template<typename _Tp, size_t _Nm>
      |                          ^~~~~~
/usr/include/c++/11/type_traits:2684:21: error: '_Nm' was not declared in this scope
 2684 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                     ^~~
/usr/include/c++/11/type_traits:2684:24: error: 'template<class _Tp, <declaration error> > constexpr std::__enable_if_t<std::__is_swappable<_Tp>::value> std::swap' conflicts with a previous declaration
 2684 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                        ^
/usr/include/c++/11/type_traits:2676:5: note: previous declaration 'constexpr std::_Require<std::__not_<std::__is_tuple_like<_Tp> >, std::is_move_constructible<_Tp>, std::is_move_assignable<_Tp> > std::swap(_Tp&, _Tp&)'
 2676 |     swap(_Tp&, _Tp&)
      |     ^~~~
/usr/include/c++/11/type_traits:2684:16: error: '__a' was not declared in this scope
 2684 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                ^~~
/usr/include/c++/11/type_traits:2684:21: error: '_Nm' was not declared in this scope
 2684 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                     ^~~
/usr/include/c++/11/type_traits:2684:33: error: '__b' was not declared in this scope
 2684 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                                 ^~~
/usr/include/c++/11/type_traits:2684:38: error: '_Nm' was not declared in this scope
 2684 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                                      ^~~
/usr/include/c++/11/type_traits:2684:43: error: expected ';' before 'noexcept'
 2684 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                                           ^
      |                                           ;
 2685 |     noexcept(__is_nothrow_swappable<_Tp>::value);
      |     ~~~~~~~~                               
/usr/include/c++/11/type_traits:3244:20: error: 'size_t' does not name a type
 3244 |   inline constexpr size_t alignment_of_v = alignment_of<_Tp>::value;
      |                    ^~~~~~
/usr/include/c++/11/type_traits:3244:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:3246:20: error: 'size_t' does not name a type
 3246 |   inline constexpr size_t rank_v = rank<_Tp>::value;
      |                    ^~~~~~
/usr/include/c++/11/type_traits:3246:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/type_traits:3248:20: error: 'size_t' does not name a type
 3248 |   inline constexpr size_t extent_v = extent<_Tp, _Idx>::value;
      |                    ^~~~~~
/usr/include/c++/11/type_traits:3248:20: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
In file included from /usr/include/c++/11/bits/stl_pair.h:59,
                 from /usr/include/c++/11/utility:70,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/bits/move.h:212:26: error: 'size_t' has not been declared
  212 |   template<typename _Tp, size_t _Nm>
      |                          ^~~~~~
/usr/include/c++/11/bits/move.h:220:21: error: '_Nm' was not declared in this scope
  220 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                     ^~~
/usr/include/c++/11/bits/move.h:220:24: error: 'template<class _Tp, <declaration error> > constexpr const typename std::enable_if<std::__is_swappable<_Tp>::value, void>::type std::swap' conflicts with a previous declaration
  220 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                        ^
/usr/include/c++/11/bits/move.h:196:5: note: previous declaration 'constexpr std::_Require<std::__not_<std::__is_tuple_like<_Tp> >, std::is_move_constructible<_Tp>, std::is_move_assignable<_Tp> > std::swap(_Tp&, _Tp&)'
  196 |     swap(_Tp& __a, _Tp& __b)
      |     ^~~~
/usr/include/c++/11/bits/move.h:220:16: error: '__a' was not declared in this scope
  220 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                ^~~
/usr/include/c++/11/bits/move.h:220:21: error: '_Nm' was not declared in this scope
  220 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                     ^~~
/usr/include/c++/11/bits/move.h:220:33: error: '__b' was not declared in this scope
  220 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                                 ^~~
/usr/include/c++/11/bits/move.h:220:38: error: '_Nm' was not declared in this scope
  220 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                                      ^~~
/usr/include/c++/11/bits/move.h:220:43: error: expected ';' before 'noexcept'
  220 |     swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
      |                                           ^
      |                                           ;
In file included from /usr/include/c++/11/compare:39,
                 from /usr/include/c++/11/bits/stl_pair.h:65,
                 from /usr/include/c++/11/utility:70,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/concepts:211:46: error: 'size_t' has not been declared
  211 |         template<typename _Tp, typename _Up, size_t _Num>
      |                                              ^~~~~~
/usr/include/c++/11/concepts:216:34: error: '_Num' was not declared in this scope
  216 |           operator()(_Tp (&__e1)[_Num], _Up (&__e2)[_Num]) const
      |                                  ^~~~
/usr/include/c++/11/concepts:216:39: error: expected ')' before ',' token
  216 |           operator()(_Tp (&__e1)[_Num], _Up (&__e2)[_Num]) const
      |                     ~                 ^
      |                                       )
/usr/include/c++/11/concepts:216:39: error: expected ';' before ',' token
  216 |           operator()(_Tp (&__e1)[_Num], _Up (&__e2)[_Num]) const
      |                                       ^
      |                                       ;
In file included from /usr/include/c++/11/utility:70,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/bits/stl_pair.h:92:12: error: 'size_t' has not been declared
   92 |   template<size_t...>
      |            ^~~~~~
/usr/include/c++/11/bits/stl_pair.h:449:36: error: 'size_t' has not been declared
  449 |       template<typename... _Args1, size_t... _Indexes1,
      |                                    ^~~~~~
/usr/include/c++/11/bits/stl_pair.h:450:36: error: 'size_t' has not been declared
  450 |                typename... _Args2, size_t... _Indexes2>
      |                                    ^~~~~~
/usr/include/c++/11/bits/stl_pair.h:453:27: error: '_Indexes1' was not declared in this scope
  453 |              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
      |                           ^~~~~~~~~
/usr/include/c++/11/bits/stl_pair.h:453:36: error: expected parameter pack before '...'
  453 |              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
      |                                    ^~~
/usr/include/c++/11/bits/stl_pair.h:453:39: error: template argument 1 is invalid
  453 |              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
      |                                       ^
/usr/include/c++/11/bits/stl_pair.h:453:55: error: '_Indexes2' was not declared in this scope
  453 |              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
      |                                                       ^~~~~~~~~
/usr/include/c++/11/bits/stl_pair.h:453:64: error: expected parameter pack before '...'
  453 |              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
      |                                                                ^~~
/usr/include/c++/11/bits/stl_pair.h:453:67: error: template argument 1 is invalid
  453 |              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
      |                                                                   ^
In file included from /usr/include/c++/11/utility:76,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/initializer_list:53:15: error: 'size_t' does not name a type
   53 |       typedef size_t            size_type;
      |               ^~~~~~
In file included from /usr/include/c++/11/utility:76,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/initializer_list:1:1: note: 'size_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
  +++ |+#include <cstddef>
    1 | // std::initializer_list support -*- C++ -*-
In file included from /usr/include/c++/11/utility:76,
                 from souvenirs.h:1,
                 from souvenirs.cpp:2:
/usr/include/c++/11/initializer_list:59:7: error: 'size_type' does not name a type; did you mean 'true_type'?
   59 |       size_type                 _M_len;
      |       ^~~~~~~~~
      |       true_type
/usr/include/c++/11/initializer_list:62:54: error: 'size_type' has not been declared
   62 |       constexpr initializer_list(const_iterator __a, size_type __l)
      |                                                      ^~~~~~~~~
/usr/include/c++/11/initializer_list:70:17: error: 'size_type' does not name a type; did you mean 'true_type'?
   70 |       constexpr size_type
      |                 ^~~~~~~~~
      |                 true_type
/usr/include/c++/11/initializer_list:47:11: fatal error: definition of 'class std::initializer_list<_E>' does not match '#include <initializer_list>'
   47 |     class initializer_list
      |           ^~~~~~~~~~~~~~~~
compilation terminated.