Submission #1150375

#TimeUsernameProblemLanguageResultExecution timeMemory
1150375Zero_OPTwo Dishes (JOI19_dishes)C++20
Compilation error
0 ms0 KiB
I'm dumb as fuck okay
#include <bits/stdc++.h>

using namespace std;

//loops (warning : long long)
#define FOR(i, l, r) for(int i = (l); i < (r); ++i)
#define ROF(i, r, l) for(int i = (r - 1); i >= l; --i)

//pairs, tuples
#define mp make_pair
#define mt make_tuple
#define ff first
#define ss second

//vectors
#define all(v) begin(v), end(v)
#define rall(v) rbegin(v), rend(v)
#define pb push_back
#define eb emplace_back
#define sum_of(v) accumulate(all(v), 0ll)
#define sz(v) (int)v.size()
#define compact(v) v.erase(unique(all(v)), end(v))

//binary search
#define lwb lower_bound
#define upb upper_bound

//other stuffs
#define dbg(x) "[" #x " = " << (x) << "]"
#define file(task) if(fopen(task".inp", "r")){ freopen(task".inp", "r", stdin); freopen(task".out", "w", stdout); }

template<typename T>
bool minimize(T& a, const T& b){
    if(a > b) return a = b, true;
    return false;
}

template<typename T>
bool maximize(T& a, const T& b){
    if(a < b) return a = b, true;
    return false;
}

using ll = long long;
using ull = unsigned long long;
using ld = long double;
using db = double;
using pi = pair<int, int>;
using pl = pair<ll, ll>;

using vi = vector<int>;
using vb = vector<bool>;
using vl = vector<ll>;
using vpi = vector<pi>;
using vpl = vector<pl>;

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());

const int MAX = 1e6 + 5;

int N, M;
ll A[MAX], B[MAX], S[MAX], T[MAX], P[MAX], Q[MAX];
vector<pair<int, ll>> events[MAX];

struct SegmentTree{
    vl st, lazy_add;
    SegmentTree(int n) : st(n << 2), lazy_add(n << 2) {}

    void apply_add(int id, ll val){
        st[id] += val;
        lazy_add[id] += val;
    }

    void down(int id){
        if(lazy_add[id] != 0){
            apply_add(id << 1, lazy_add[id]);
            apply_add(id << 1 | 1, lazy_add[id]);
            lazy_add[id] = 0;
        }
    }

    void update(int id, int l, int r, int u, int v, ll val){
        if(u <= l && r <= v) apply_add(id, val);
        else{
            int mid = l + r >> 1;
            down(id);
            if(u <= mid) update(id << 1, l, mid, u, v, val);
            if(mid < v)  update(id << 1 | 1, mid + 1, r, u, v, val);
            st[id] = max(st[id << 1], st[id << 1 | 1]);
        }
    }

    void update_max(int id, int l, int r, int pos, ll val){
        if(l == r) st[id] = max(st[id << 1], val);
        else{
            int mid = l + r >> 1;
            down(id);
            if(pos <= mid) update_max(id << 1, l, mid, pos, val);
            else update_max(id << 1 | 1, mid + 1, r, pos, val);
            st[id] = max(st[id << 1], st[id << 1 | 1]);
        }
    }

    ll query(int id, int l, int r, int u, int v){
        if(v < l || u > r) return LLONG_MIN;
        if(u <= l && r <= v) return st[id];
        int mid = l + r >> 1;
        down(id);
        return max(query(id << 1, l, mid, u, v), query(id << 1 | 1, mid + 1, r, u, v));
    }

    void debug(int id, int l, int r){
        if(l == r) cout << st[id] << ' ';
        else{
            int mid = l + r >> 1;
            down(id);
            debug(id << 1, l, mid);
            debug(id << 1 | 1, mid + 1, r);
        }
    }
};

void testcase(int ntestcase){
    cin >> N >> M;
    FOR(i, 1, N+1){
        cin >> A[i] >> S[i] >> P[i];
        A[i] += A[i-1];
    }

    FOR(i, 1, M+1){
        cin >> B[i] >> T[i] >> Q[i];
        B[i] += B[i-1];
    }

    FOR(i, 1, N+1){
        int reach = upper_bound(B, B + M + 1, S[i] - A[i]) - B - 1;
        if(reach >= 0){
            //(i, X[i]) with +P[i]
            cout << "A : " << "(" << i << ", " << reach << ") : " << P[i] << '\n';
            events[i].pb(mp(reach, +P[i]));
        }
    }

    FOR(i, 1, M+1){
        int reach = upper_bound(A, A + N + 1, T[i] - B[i]) - A - 1;
        if(reach >= 0){ 
            //(Y[i], i) with +Q[i]
            //(Y[i]+1, i-1) with -Q[i]
            cout << "B : " << "(" << reach << ", " << i << ") : " << Q[i] << '\n';
            events[reach].pb(mp(i, +Q[i]));
            if(reach+1 <= N) events[reach+1].pb(mp(i-1, -Q[i]));
        }
    }

    SegmentTree T(M+1);
    FOR(i, 0, N+1){
        sort(all(events[i]));
        //reduce
        FOR(j, 0, sz(events[i])){
            ll sum = events[i][j].ss;
            while(j+1 < sz(events[i]) && events[i][j].ff == events[i][j+1].ff){
                ++j;
                sum += events[i][j].ss;
            }

            int y = events[i][j].ff;
            cout << i << ' ' << y << ' ' << sum << '\n';
            ll cur = T.query(1, 0, M, 0, y);
            T.update_max(1, 0, M, y, cur);
            T.update(1, 0, M, 0, y, +sum);
        }

        cout << dbg(i) << " : "; T.debug(1, 0, M); cout << '\n';
    }

    cout << T.query(1, 0, M, 0, M) << '\n';
}

int main(){
    ios_base::sync_with_stdio(0); cin.tie(0);

#ifdef LOCAL
    freopen("in.txt", "r", stdin);
#endif // LOCAL

    int T = 1;
//    cin >> T;
    FOR(i, 0, T) testcase(i);

    return 0;
}

Compilation message (stderr)

dishes.cpp:1:2: warning: missing terminating ' character
    1 | I'm dumb as fuck okay
      |  ^
dishes.cpp:1:2: error: missing terminating ' character
    1 | I'm dumb as fuck okay
      |  ^~~~~~~~~~~~~~~~~~~~
dishes.cpp:1:1: error: 'I' does not name a type
    1 | I'm dumb as fuck okay
      | ^
In file included from /usr/include/c++/11/cmath:43,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/ios:40,
                 from /usr/include/c++/11/istream:38,
                 from /usr/include/c++/11/sstream:38,
                 from /usr/include/c++/11/complex:45,
                 from /usr/include/c++/11/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54,
                 from dishes.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; did you mean 'time_t'?
  116 |       static _GLIBCXX14_CONSTEXPR std::size_t
      |                                        ^~~~~~
      |                                        time_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 'time_t'?
  157 |       for (std::size_t __i = 0; __i < __n; ++__i)
      |                 ^~~~~~
      |                 time_t
/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; did you mean 'time_t'?
  166 |     _GLIBCXX14_CONSTEXPR std::size_t
      |                               ^~~~~~
      |                               time_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 'time_t'?
  181 |       for (std::size_t __i = 0; __i < __n; ++__i)
      |                 ^~~~~~
      |                 time_t
/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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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/ios:40,
                 from /usr/include/c++/11/istream:38,
                 from /usr/include/c++/11/sstream:38,
                 from /usr/include/c++/11/complex:45,
                 from /usr/include/c++/11/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/11/bits/stdc++.h:54,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:50,
                 from dishes.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/x86_64-linux-gnu/c++/11/bits/stdc++.h:41,
                 from dishes.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++/