| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1179081 | pandaa73 | Abracadabra (CEOI22_abracadabra) | C++20 | Compilation error | 0 ms | 0 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;
}
Compilation message (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_