제출 #1179081

#제출 시각아이디문제언어결과실행 시간메모리
1179081pandaa73Abracadabra (CEOI22_abracadabra)C++20
컴파일 에러
0 ms0 KiB
> #include <random> using namespace std; #define lf "\n" #define ff endl #define _ << ' ' << #define all(x) begin(x),end(x) #define rall(x) rbegin(x),rend(x) #define infos(str) do { fprintf(stderr, str"\n"); } while(0) #define infor(str, ...) do { fprintf(stderr, str, __VA_ARGS__); } while(0) #define infof(str, ...) do { fprintf(stderr, str"\n", __VA_ARGS__); } while(0) #ifndef DEBUG #undef infos #undef infor #undef infof #define infos(str) #define infor(str, ...) #define infof(str, ...) #endif using ll = long long; constexpr int LOG = 20; constexpr int MOD = 1e9+7; constexpr int MAXN = 1e5+7; mt19937 mt(chrono::steady_clock::now().time_since_epoch().count()); using Treap = struct Node *; struct Node { int pri; int val; int sz; int id; Treap l; Treap r; Node(int val): pri(mt()), val(val), sz(1) { static int id = 0; infof("- Created new node %d with %d", id, val); this->id = id++; l = r = NULL; } void operator~(void) { delete l; delete r; } }; int sz(Treap v) { return v ? v->sz : 0; } void pull(Treap v) { if(!v) return; v->sz = sz(v->l) + 1 + sz(v->r); } int first(Treap v) { if(v->l) return first(v->l); return v->val; } Treap merge(Treap l, Treap r) { if(!l || !r) return l ? l : r; //infof("... Merging %d with %d", l->id, r->id); if(l->pri > r->pri) { l->r = merge(l->r, r); pull(l); if(l->r) assert(l->r->id != l->id); return l; } r->l = merge(l, r->l); pull(r); if(r->l) assert(r->l->id != r->id); return r; } array<Treap, 2> split(Treap v, int i) { if(!v) return {NULL, NULL}; //infof("... Splitting %d | sz_l: %d, sz_r: %d", v->id, sz(v->l), sz(v->r)); if(sz(v->l) >= i) { if(v->l) assert(v->l->id != v->id); auto [l, r] = split(v->l, i); v->l = r; pull(v); return {l, v}; } else { if(v->r) assert(v->r->id != v->id); auto [l, r] = split(v->r, i - sz(v->l) - 1); v->r = l; pull(v); return {v, r}; } } Treap find(Treap v, int i) { if(!v) return 0; //infof("... Finding %d [%d, %d]", i, sz(v->l), sz(v->r)); if(sz(v->l) == i) return v; if(sz(v->l) > i && v->l) assert(v->l->id != v->id); if(sz(v->r) > i && v->r) assert(v->r->id != v->id); if(sz(v->l) > i) return find(v->l, i); else return find(v->r, i - sz(v->l) - 1); } void print(Treap v) { if(!v) return; print(v->l); infor("%d [%d] ", v->val, v->id); print(v->r); } Treap shuffler(Treap v, int k) { pull(v); const int N = sz(v); auto [l, r] = split(v, N / 2); infof("K = %d: split into sizes: sz_l %d, sz_r %d", k, sz(l), sz(r)); assert(sz(l) == sz(r)); v = NULL; Treap block_l = NULL, block_r = NULL; for(; sz(l) && sz(r);) { if(!block_l) { infor("- Splitting L | sz is %d | ", sz(l)); auto ret = split(l, k); block_l = ret[0], l = ret[1]; infof("block: %d ; rest: %d", sz(block_l), sz(l)); } if(!block_r) { infor("- Splitting R | sz is %d | ", sz(r)); auto ret = split(r, k); block_r = ret[0], r = ret[1]; infof("block: %d ; rest: %d", sz(block_r), sz(r)); } infof("- First L: %d | First R: %d", first(block_l), first(block_r)); if(first(block_l) < first(block_r)) v = merge(v, block_l), block_l = NULL; else v = merge(v, block_r), block_r = NULL; } l = merge(block_l, l); r = merge(block_r, r); if(sz(l)) v = merge(v, l); if(sz(r)) v = merge(v, r); return v; } int main(void) { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int N, Q; cin >> N >> Q; vector<int> V(N); for(auto &x: V) cin >> x; vector<array<int, 2>> Qs(Q); for(auto &[t, i]: Qs) cin >> t >> i, i--; vector<int> order(Q); iota(all(order), 0); sort(all(order), [&](int i, int j) -> bool { return Qs[i] < Qs[j]; }); vector<int> ans(Q); vector<Treap> nodes(N); Treap v = new Node(V[0]); nodes[0] = v; for(int i = 1; i < N; ++i) v = merge(v, nodes[i] = new Node(V[i])); infof("Initialized treap with %d nodes", sz(v)); infos("Treap at start:"); print(v); infos(""); int it = 0; int curr = 0; for(int q: order) { infos("================"); infof("%d: size of treap is %d", it++, sz(v)); auto [t, idx] = Qs[q]; infof("Solving %d %d", t, idx); infos(""); if(t > N) { ans[q] = V[idx]; continue; } for(; curr < t; ++curr) { v = shuffler(v, 1); infos(""); infof("Treap at %d:", curr + 1); print(v); infos(""); infos(""); } infof("searching index %d in treap of size %d", idx, sz(v)); Treap node = find(v, idx); assert(node); ans[q] = node->val; infof("ANSWER FOR %d: %d", q, ans[q]); } for(auto x: ans) cout << x << lf; cout.flush(); infof("treap has %d nodes", sz(v)); print(v); infos(""); for(auto x: nodes) delete x; }

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

Main.cpp:1:1: error: expected unqualified-id before '>' token
    1 | >
      | ^
In file included from /usr/include/c++/11/cmath:43,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/ext/type_traits.h:162:35: error: 'bool __gnu_cxx::__is_null_pointer' redeclared as different kind of entity
  162 |   __is_null_pointer(std::nullptr_t)
      |                                   ^
/usr/include/c++/11/ext/type_traits.h:157:5: note: previous declaration 'template<class _Type> bool __gnu_cxx::__is_null_pointer(_Type)'
  157 |     __is_null_pointer(_Type)
      |     ^~~~~~~~~~~~~~~~~
/usr/include/c++/11/ext/type_traits.h:162:26: error: 'nullptr_t' is not a member of 'std'
  162 |   __is_null_pointer(std::nullptr_t)
      |                          ^~~~~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/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'; did you mean 'size_t'?
 1361 |     : public integral_constant<std::size_t, alignof(_Tp)>
      |                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/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'; did you mean 'size_t'?
 1370 |     : public integral_constant<std::size_t, 0> { };
      |                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/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'; did you mean 'size_t'?
 1374 |     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
      |                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/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'; did you mean 'size_t'?
 1378 |     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
      |                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/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'; did you mean 'size_t'?
 1383 |     : public integral_constant<std::size_t, 0> { };
      |                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/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'; did you mean 'size_t'?
 1387 |     : public integral_constant<std::size_t,
      |                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/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'; did you mean 'size_t'?
 1394 |     : public integral_constant<std::size_t,
      |                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
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/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/type_traits:1396:73: error: template argument 1 is invalid
 1396 |                                                        _Uint - 1>::value>
      |                                                                         ^
/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;
      |                                            ^~~~~~
In file included from /usr/include/c++/11/bits/iterator_concepts.h:36,
                 from /usr/include/c++/11/bits/stl_iterator_base_types.h:71,
                 from /usr/include/c++/11/bits/stl_algobase.h:65,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/ptr_traits.h:119:27: error: 'ptrdiff_t' was not declared in this scope
  119 |         = __detected_or_t<ptrdiff_t, __difference_type, _Ptr>;
      |                           ^~~~~~~~~
/usr/include/c++/11/bits/ptr_traits.h:1:1: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
  +++ |+#include <cstddef>
    1 | // Pointer Traits -*- C++ -*-
/usr/include/c++/11/bits/ptr_traits.h:119:61: error: template argument 1 is invalid
  119 |         = __detected_or_t<ptrdiff_t, __difference_type, _Ptr>;
      |                                                             ^
/usr/include/c++/11/bits/ptr_traits.h:138:15: error: 'ptrdiff_t' does not name a type
  138 |       typedef ptrdiff_t difference_type;
      |               ^~~~~~~~~
/usr/include/c++/11/bits/ptr_traits.h:138:15: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
In file included from /usr/include/c++/11/bits/stl_iterator_base_types.h:71,
                 from /usr/include/c++/11/bits/stl_algobase.h:65,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/iterator_concepts.h:153:31: error: 'ptrdiff_t' does not name a type
  153 |     { using difference_type = ptrdiff_t; };
      |                               ^~~~~~~~~
/usr/include/c++/11/bits/iterator_concepts.h:38:1: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
   37 | #include <bits/ranges_cmp.h>    // identity, ranges::less
  +++ |+#include <cstddef>
   38 | 
In file included from /usr/include/c++/11/bits/stl_algobase.h:65,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/stl_iterator_base_types.h:125:67: error: 'ptrdiff_t' does not name a type
  125 |   template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t,
      |                                                                   ^~~~~~~~~
/usr/include/c++/11/bits/stl_iterator_base_types.h:72:1: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
   71 | # include <bits/iterator_concepts.h>
  +++ |+#include <cstddef>
   72 | #endif
/usr/include/c++/11/bits/stl_iterator_base_types.h:203:33: error: 'ptrdiff_t' does not name a type
  203 |       using difference_type   = ptrdiff_t;
      |                                 ^~~~~~~~~
/usr/include/c++/11/bits/stl_iterator_base_types.h:203:33: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
In file included from /usr/include/c++/11/bits/stl_algobase.h:66,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/stl_iterator_base_funcs.h:110:5: error: 'ptrdiff_t' does not name a type
  110 |     ptrdiff_t
      |     ^~~~~~~~~
/usr/include/c++/11/bits/stl_iterator_base_funcs.h:66:1: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
   65 | #include <debug/assertions.h>
  +++ |+#include <cstddef>
   66 | 
/usr/include/c++/11/bits/stl_iterator_base_funcs.h:116:5: error: 'ptrdiff_t' does not name a type
  116 |     ptrdiff_t
      |     ^~~~~~~~~
/usr/include/c++/11/bits/stl_iterator_base_funcs.h:116:5: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:126:26: error: declaration of 'operator new' as non-function
  126 | _GLIBCXX_NODISCARD void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
      |                          ^~~~~~~~
/usr/include/c++/11/new:126:44: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  126 | _GLIBCXX_NODISCARD void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
      |                                            ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:127:41: error: attributes after parenthesized initializer ignored [-fpermissive]
  127 |   __attribute__((__externally_visible__));
      |                                         ^
/usr/include/c++/11/new:128:26: error: declaration of 'operator new []' as non-function
  128 | _GLIBCXX_NODISCARD void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
      |                          ^~~~~~~~
/usr/include/c++/11/new:128:46: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  128 | _GLIBCXX_NODISCARD void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
      |                                              ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:129:41: error: attributes after parenthesized initializer ignored [-fpermissive]
  129 |   __attribute__((__externally_visible__));
      |                                         ^
/usr/include/c++/11/new:135:29: error: 'std::size_t' has not been declared
  135 | void operator delete(void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
      |                             ^~~
/usr/include/c++/11/new:137:31: error: 'std::size_t' has not been declared
  137 | void operator delete[](void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
      |                               ^~~
/usr/include/c++/11/new:140:26: error: declaration of 'operator new' as non-function
  140 | _GLIBCXX_NODISCARD void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
      |                          ^~~~~~~~
/usr/include/c++/11/new:140:44: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  140 | _GLIBCXX_NODISCARD void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
      |                                            ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:140:52: error: expected primary-expression before 'const'
  140 | _GLIBCXX_NODISCARD void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
      |                                                    ^~~~~
/usr/include/c++/11/new:142:26: error: declaration of 'operator new []' as non-function
  142 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
      |                          ^~~~~~~~
/usr/include/c++/11/new:142:46: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  142 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
      |                                              ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:142:54: error: expected primary-expression before 'const'
  142 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
      |                                                      ^~~~~
/usr/include/c++/11/new:149:26: error: declaration of 'operator new' as non-function
  149 | _GLIBCXX_NODISCARD void* operator new(std::size_t, std::align_val_t)
      |                          ^~~~~~~~
/usr/include/c++/11/new:149:44: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  149 | _GLIBCXX_NODISCARD void* operator new(std::size_t, std::align_val_t)
      |                                            ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:149:68: error: expected primary-expression before ')' token
  149 | _GLIBCXX_NODISCARD void* operator new(std::size_t, std::align_val_t)
      |                                                                    ^
/usr/include/c++/11/new:150:73: error: attributes after parenthesized initializer ignored [-fpermissive]
  150 |   __attribute__((__externally_visible__, __alloc_size__ (1), __malloc__));
      |                                                                         ^
/usr/include/c++/11/new:151:26: error: declaration of 'operator new' as non-function
  151 | _GLIBCXX_NODISCARD void* operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
      |                          ^~~~~~~~
/usr/include/c++/11/new:151:44: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  151 | _GLIBCXX_NODISCARD void* operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
      |                                            ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:151:68: error: expected primary-expression before ',' token
  151 | _GLIBCXX_NODISCARD void* operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
      |                                                                    ^
/usr/include/c++/11/new:151:70: error: expected primary-expression before 'const'
  151 | _GLIBCXX_NODISCARD void* operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
      |                                                                      ^~~~~
/usr/include/c++/11/new:157:26: error: declaration of 'operator new []' as non-function
  157 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, std::align_val_t)
      |                          ^~~~~~~~
/usr/include/c++/11/new:157:46: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  157 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, std::align_val_t)
      |                                              ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:157:70: error: expected primary-expression before ')' token
  157 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, std::align_val_t)
      |                                                                      ^
/usr/include/c++/11/new:158:73: error: attributes after parenthesized initializer ignored [-fpermissive]
  158 |   __attribute__((__externally_visible__, __alloc_size__ (1), __malloc__));
      |                                                                         ^
/usr/include/c++/11/new:159:26: error: declaration of 'operator new []' as non-function
  159 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
      |                          ^~~~~~~~
/usr/include/c++/11/new:159:46: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  159 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
      |                                              ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:159:70: error: expected primary-expression before ',' token
  159 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
      |                                                                      ^
/usr/include/c++/11/new:159:72: error: expected primary-expression before 'const'
  159 | _GLIBCXX_NODISCARD void* operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
      |                                                                        ^~~~~
/usr/include/c++/11/new:166:29: error: 'std::size_t' has not been declared
  166 | void operator delete(void*, std::size_t, std::align_val_t)
      |                             ^~~
/usr/include/c++/11/new:168:31: error: 'std::size_t' has not been declared
  168 | void operator delete[](void*, std::size_t, std::align_val_t)
      |                               ^~~
/usr/include/c++/11/new:174:33: error: declaration of 'operator new' as non-function
  174 | _GLIBCXX_NODISCARD inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
      |                                 ^~~~~~~~
/usr/include/c++/11/new:174:51: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  174 | _GLIBCXX_NODISCARD inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
      |                                                   ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:174:59: error: expected primary-expression before 'void'
  174 | _GLIBCXX_NODISCARD inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
      |                                                           ^~~~
/usr/include/c++/11/new:176:33: error: declaration of 'operator new []' as non-function
  176 | _GLIBCXX_NODISCARD inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
      |                                 ^~~~~~~~
/usr/include/c++/11/new:176:53: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  176 | _GLIBCXX_NODISCARD inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
      |                                                     ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/bits/stl_iterator.h:82,
                 from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/new:176:61: error: expected primary-expression before 'void'
  176 | _GLIBCXX_NODISCARD inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
      |                                                             ^~~~
In file included from /usr/include/c++/11/bits/stl_algobase.h:67,
                 from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/stl_iterator.h:658:31: error: 'ptrdiff_t' does not name a type
  658 |       using difference_type = ptrdiff_t;
      |                               ^~~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:86:1: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
   85 | # include <bits/stl_construct.h>
  +++ |+#include <cstddef>
   86 | #endif
/usr/include/c++/11/bits/stl_iterator.h:761:31: error: 'ptrdiff_t' does not name a type
  761 |       using difference_type = ptrdiff_t;
      |                               ^~~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:761:31: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/bits/stl_iterator.h:880:31: error: 'ptrdiff_t' does not name a type
  880 |       using difference_type = ptrdiff_t;
      |                               ^~~~~~~~~
/usr/include/c++/11/bits/stl_iterator.h:880:31: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
In file included from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/stl_algobase.h: In static member function 'static constexpr _Tp* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(const _Tp*, const _Tp*, _Tp*)':
/usr/include/c++/11/bits/stl_algobase.h:429:17: error: 'ptrdiff_t' does not name a type
  429 |           const ptrdiff_t _Num = __last - __first;
      |                 ^~~~~~~~~
/usr/include/c++/11/bits/stl_algobase.h:72:1: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
   71 | #include <bits/predefined_ops.h>
  +++ |+#include <cstddef>
   72 | #if __cplusplus >= 201103L
/usr/include/c++/11/bits/stl_algobase.h:430:15: error: '_Num' was not declared in this scope
  430 |           if (_Num)
      |               ^~~~
/usr/include/c++/11/bits/stl_algobase.h:432:29: error: '_Num' was not declared in this scope
  432 |           return __result + _Num;
      |                             ^~~~
/usr/include/c++/11/bits/stl_algobase.h: In static member function 'static constexpr _Tp* std::__copy_move_backward<_IsMove, true, std::random_access_iterator_tag>::__copy_move_b(const _Tp*, const _Tp*, _Tp*)':
/usr/include/c++/11/bits/stl_algobase.h:740:17: error: 'ptrdiff_t' does not name a type
  740 |           const ptrdiff_t _Num = __last - __first;
      |                 ^~~~~~~~~
/usr/include/c++/11/bits/stl_algobase.h:740:17: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
/usr/include/c++/11/bits/stl_algobase.h:741:15: error: '_Num' was not declared in this scope
  741 |           if (_Num)
      |               ^~~~
/usr/include/c++/11/bits/stl_algobase.h:743:29: error: '_Num' was not declared in this scope
  743 |           return __result - _Num;
      |                             ^~~~
/usr/include/c++/11/bits/stl_algobase.h: At global scope:
/usr/include/c++/11/bits/stl_algobase.h:1349:16: error: 'ptrdiff_t' does not name a type
 1349 |         static ptrdiff_t
      |                ^~~~~~~~~
/usr/include/c++/11/bits/stl_algobase.h:1349:16: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
In file included from /usr/include/c++/11/bits/char_traits.h:40,
                 from /usr/include/c++/11/string:40,
                 from /usr/include/c++/11/random:40,
                 from Main.cpp:2:
/usr/include/c++/11/bits/postypes.h:98:11: error: 'ptrdiff_t' does not name a type
   98 |   typedef ptrdiff_t     streamsize; // Signed integral type
      |           ^~~~~~~~~
/usr/include/c++/11/bits/postypes.h:41:1: note: 'ptrdiff_t' is defined in header '<cstddef>'; did you forget to '#include <cstddef>'?
   40 | #include <cwchar> // For mbstate_t
  +++ |+#include <cstddef>
   41 | 
In file included from /usr/include/c++/11/string:40,
                 from /usr/include/c++/11/random:40,
                 from Main.cpp:2:
/usr/include/c++/11/bits/char_traits.h:114:61: error: 'std::size_t' has not been declared
  114 |       compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
      |                                                             ^~~
/usr/include/c++/11/bits/char_traits.h:116:40: error: 'size_t' in namespace 'std' does not name a type
  116 |       static _GLIBCXX14_CONSTEXPR std::size_t
      |                                        ^~~~~~
/usr/include/c++/11/bits/char_traits.h:120:34: error: 'std::size_t' has not been declared
  120 |       find(const char_type* __s, std::size_t __n, const char_type& __a);
      |                                  ^~~
/usr/include/c++/11/bits/char_traits.h:123:52: error: 'std::size_t' has not been declared
  123 |       move(char_type* __s1, const char_type* __s2, std::size_t __n);
      |                                                    ^~~
/usr/include/c++/11/bits/char_traits.h:126:52: error: 'std::size_t' has not been declared
  126 |       copy(char_type* __s1, const char_type* __s2, std::size_t __n);
      |                                                    ^~~
/usr/include/c++/11/bits/char_traits.h:129:30: error: 'std::size_t' has not been declared
  129 |       assign(char_type* __s, std::size_t __n, char_type __a);
      |                              ^~~
/usr/include/c++/11/bits/char_traits.h:155:59: error: 'std::size_t' has not been declared
  155 |     compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
      |                                                           ^~~
/usr/include/c++/11/bits/char_traits.h: In static member function 'static constexpr int __gnu_cxx::char_traits<_CharT>::compare(const char_type*, const char_type*, int)':
/usr/include/c++/11/bits/char_traits.h:157:17: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  157 |       for (std::size_t __i = 0; __i < __n; ++__i)
      |                 ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/string:40,
                 from /usr/include/c++/11/random:40,
                 from Main.cpp:2:
/usr/include/c++/11/bits/char_traits.h:157:33: error: '__i' was not declared in this scope; did you mean '__n'?
  157 |       for (std::size_t __i = 0; __i < __n; ++__i)
      |                                 ^~~
      |                                 __n
/usr/include/c++/11/bits/char_traits.h: At global scope:
/usr/include/c++/11/bits/char_traits.h:166:31: error: 'size_t' in namespace 'std' does not name a type
  166 |     _GLIBCXX14_CONSTEXPR std::size_t
      |                               ^~~~~~
/usr/include/c++/11/bits/char_traits.h:179:32: error: 'std::size_t' has not been declared
  179 |     find(const char_type* __s, std::size_t __n, const char_type& __a)
      |                                ^~~
/usr/include/c++/11/bits/char_traits.h: In static member function 'static constexpr const char_type* __gnu_cxx::char_traits<_CharT>::find(const char_type*, int, const char_type&)':
/usr/include/c++/11/bits/char_traits.h:181:17: error: 'size_t' is not a member of 'std'; did you mean 'size_t'?
  181 |       for (std::size_t __i = 0; __i < __n; ++__i)
      |                 ^~~~~~
In file included from /usr/include/stdlib.h:32,
                 from /usr/include/c++/11/bits/std_abs.h:38,
                 from /usr/include/c++/11/cmath:47,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/11/string:40,
                 from /usr/include/c++/11/random:40,
                 from Main.cpp:2:
/usr/include/c++/11/bits/char_traits.h:181:33: error: '__i' was not declared in this scope; did you mean '__s'?
  181 |       for (std::size_t __i = 0; __i < __n; ++__i)
      |                                 ^~~
      |                                 __s
/usr/include/c++/11/bits/char_traits.h: At global scope:
/usr/include/c++/11/bits/char_traits.h:191:50: error: 'std::size_t' has not been declared
  191 |     move(char_type* __s1, const char_type* __s2, std::size_t __n)
      |                                                  ^~~
/usr/include/c++/11/bits/char_traits.h:241:50: error: 'std::size_t' has not been declared
  241 |     copy(char_type* __s1, const char_type* __s2, std::size_t __n)
      |                                                  ^~~
/usr/include/c++/11/bits/char_traits.h:252:28: error: 'std::size_t' has not been declared
  252 |     assign(char_type* __s, std::size_t __n, char_type __a)
      |                            ^~~
/usr/include/c++/11/bits/char_traits.h: In static member function 'static constexpr size_t std::char_traits<char>::length(const char_type*)':
/usr/include/c++/11/bits/char_traits.h:397:53: error: 'length' is not a member of '__gnu_cxx::char_traits<char>'
  397 |           return __gnu_cxx::char_traits<char_type>::length(__s);
      |                                                     ^~~~~~
In file included from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/stl_algobase.h: In instantiation of 'static constexpr _OI std::__copy_move<false, false, std::random_access_iterator_tag>::__copy_m(_II, _II, _OI) [with _II = const char*; _OI = char*]':
/usr/include/c++/11/bits/stl_algobase.h:492:12:   required from 'constexpr _OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = false; _II = const char*; _OI = char*]'
/usr/include/c++/11/bits/stl_algobase.h:522:42:   required from 'constexpr _OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = false; _II = const char*; _OI = char*]'
/usr/include/c++/11/bits/stl_algobase.h:530:31:   required from 'constexpr _OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = false; _II = const char*; _OI = char*]'
/usr/include/c++/11/bits/stl_algobase.h:620:7:   required from 'constexpr _OI std::copy(_II, _II, _OI) [with _II = const char*; _OI = char*]'
/usr/include/c++/11/bits/char_traits.h:244:7:   required from 'static constexpr __gnu_cxx::char_traits<_CharT>::char_type* __gnu_cxx::char_traits<_CharT>::copy(__gnu_cxx::char_traits<_CharT>::char_type*, const char_type*, int) [with _CharT = char; __gnu_cxx::char_traits<_CharT>::char_type = char]'
/usr/include/c++/11/bits/char_traits.h:204:4:   required from 'static constexpr __gnu_cxx::char_traits<_CharT>::char_type* __gnu_cxx::char_traits<_CharT>::move(__gnu_cxx::char_traits<_CharT>::char_type*, const char_type*, int) [with _CharT = char; __gnu_cxx::char_traits<_CharT>::char_type = char]'
/usr/include/c++/11/bits/char_traits.h:423:50:   required from here
/usr/include/c++/11/bits/stl_algobase.h:382:66: error: no type named 'difference_type' in 'struct std::iterator_traits<const char*>'
  382 |           typedef typename iterator_traits<_II>::difference_type _Distance;
      |                                                                  ^~~~~~~~~
In file included from /usr/include/c++/11/string:40,
                 from /usr/include/c++/11/random:40,
                 from Main.cpp:2:
/usr/include/c++/11/bits/char_traits.h: In static member function 'static constexpr size_t std::char_traits<wchar_t>::length(const char_type*)':
/usr/include/c++/11/bits/char_traits.h:521:53: error: 'length' is not a member of '__gnu_cxx::char_traits<wchar_t>'
  521 |           return __gnu_cxx::char_traits<char_type>::length(__s);
      |                                                     ^~~~~~
/usr/include/c++/11/bits/char_traits.h:523:22: error: call to non-'constexpr' function 'size_t wcslen(const wchar_t*)'
  523 |         return wcslen(__s);
      |                ~~~~~~^~~~~
In file included from /usr/include/c++/11/cwchar:44,
                 from /usr/include/c++/11/bits/postypes.h:40,
                 from /usr/include/c++/11/bits/char_traits.h:40,
                 from /usr/include/c++/11/string:40,
                 from /usr/include/c++/11/random:40,
                 from Main.cpp:2:
/usr/include/wchar.h:223:15: note: 'size_t wcslen(const wchar_t*)' declared here
  223 | extern size_t wcslen (const wchar_t *__s) __THROW __attribute_pure__;
      |               ^~~~~~
In file included from /usr/include/c++/11/bits/specfun.h:45,
                 from /usr/include/c++/11/cmath:1935,
                 from /usr/include/c++/11/random:38,
                 from Main.cpp:2:
/usr/include/c++/11/bits/stl_algobase.h: In instantiation of 'static constexpr _OI std::__copy_move<false, false, std::random_access_iterator_tag>::__copy_m(_II, _II, _OI) [with _II = const wchar_t*; _OI = wchar_t*]':
/usr/include/c++/11/bits/stl_algobase.h:492:12:   required from 'constexpr _OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = false; _II = const wchar_t*; _OI = wchar_t*]'
/usr/include/c++/11/bits/stl_algobase.h:522:42:   required from 'constexpr _OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = false; _II = const wchar_t*; _OI = wchar_t*]'
/usr/include/c++/11/bits/stl_algobase.h:530:31:   required from 'constexpr _OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = false; _II = const wchar_t*; _OI = wchar_t*]'
/usr/include/c++/11/bits/stl_algobase.h:620:7:   required from 'constexpr _OI std::copy(_II, _II, _OI) [with _II = const wchar_t*; _OI = wchar_t*]'
/usr/include/c++/11/bits/char_traits.h:244:7:   required from 'static constexpr __gnu_cxx::char_