제출 #653202

#제출 시각아이디문제언어결과실행 시간메모리
653202Rafi22Prize (CEOI22_prize)C++14
컴파일 에러
0 ms0 KiB
oj.uz SUBMISSION #653143 # Submission timeUTC+2 Handle Problem Language Result Execution time Memory 653143 2022-10-25 21:30:49 Rafi22 Prize (CEOI22_prize) C++14 10 / 100 1828 ms 504904 KB Main #include <bits/stdc++.h> using namespace std; //#define endl '\n' #define st first #define nd second #define pb push_back #define sz(x) (int)(x).size() #define all(x) (x).begin(), (x).end() #define ll long long #define ld long double ll mod=1000000007; int inf=1000000007; ll infl=1000000000000000007; const int N=1000007; vector<int>G1[N],G2[N],G3[N]; int d1[N],d2[N]; bool odw[N]; vector<pair<int,int>>X[N],X1[N]; bool is[N]; int n,k,q,t; int skok[N][20]; int pre[N]; int post[N]; int c=0; void dfs(int v,int o) { pre[v]=++c; skok[v][0]=o; for(int i=1;i<20;i++) skok[v][i]=skok[skok[v][i-1]][i-1]; if(k>0) { cout<<v<<" "; is[v]=1; k--; } for(auto u:G1[v]) dfs(u,v); post[v]=++c; } int lca(int u,int v) { if(pre[u]<=pre[v]&&post[u]>=post[v]) return u; if(pre[v]<=pre[u]&&post[v]>=post[u]) return v; for(int i=19;i>=0;i--) if(!(pre[skok[u][i]]<=pre[v]&&post[skok[u][i]]>=post[v])) u=skok[u][i]; return skok[u][0]; } vector<pair<pair<int,int>,int>>xd; void qry(int u,int v,int x) { if(!is[u]||!is[v]) for(int i=0;i<1000000000;i++) dfs(1,0); cout<<"? "<<u<<" "<<v<<endl; xd.pb({{u,v},x}); } int last[N]; int last1[N]; int pre1[N]; int post1[N]; void dfs1(int v) { pre1[v]=c++;    int l=0,l1=0,cc=0; for(auto u:G2[v]) { dfs1(u); if(last[u]>0) {            cc++; if(is[v]) { G3[v].pb(last1[u]); qry(last[u],v,v); }            else if(cc>1) {                if(cc==2) G3[v].pb(l1); G3[v].pb(last1[u]); qry(l,last[u],v); } else { l=last[u]; l1=last1[u]; } } } if(is[v]) last[v]=v; else last[v]=l;    if(is[v]||cc>1) last1[v]=v; else last1[v]=l1; post1[v]=c++; } int skok1[N][20]; void dfs2(int v,int o) { pre1[v]=c++; skok1[v][0]=o; for(int i=1;i<20;i++) skok1[v][i]=skok1[skok1[v][i-1]][i-1]; for(auto u:G3[v]) dfs2(u,v); post1[v]=c++; } int lca1(int u,int v) { if(pre1[u]<=pre1[v]&&post1[u]>=post1[v]) return u; if(pre1[v]<=pre1[u]&&post1[v]>=post1[u]) return v; for(int i=19;i>=0;i--) if(!(pre1[skok1[u][i]]<=pre1[v]&&post1[skok1[u][i]]>=post1[v])) u=skok1[u][i]; return skok1[u][0]; } int U[N],V[N]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>n>>k>>q>>t; int K=k; int r1,r2,p; for(int i=1;i<=n;i++) { cin>>p; if(p==-1) r1=i; else G1[p].pb(i); } for(int i=1;i<=n;i++) { cin>>p; if(p==-1) r2=i; else G2[p].pb(i); } dfs(r1,r1); cout<<endl; c=0; dfs1(r2); if(sz(xd)>K) { return 2137; // for(int i=0;i<100000000;i++) dfs(1,0); } cout<<"!"<<endl; for(auto c:xd) { int u=c.st.st,v=c.st.nd,x=c.nd; int d1,d2,d3,d4; cin>>d1>>d2>>d3>>d4; int l=lca(u,v); X[l].pb({u,d1}); X[u].pb({l,d1}); X[l].pb({v,d2}); X[v].pb({l,d2}); X1[x].pb({u,d3}); X1[u].pb({x,d3}); X1[x].pb({v,d4}); X1[v].pb({x,d4}); } c=0; dfs2(last1[r2],last1[r2]); deque<int>Q; Q.pb(r1); odw[r1]=1; while(sz(Q)>0) { int v=Q[0]; Q.pop_front(); for(auto x:X[v]) { if(odw[x.st]) continue; odw[x.st]=1; Q.pb(x.st); if(pre[x.st]>=pre[v]) d1[x.st]=d1[v]+x.nd; else d1[x.st]=d1[v]-x.nd; } } memset(odw,0,sizeof odw); Q.pb(r2); odw[r2]=1; while(sz(Q)>0) { int v=Q[0]; Q.pop_front(); for(auto x:X1[v]) { if(odw[x.st]) continue; odw[x.st]=1; Q.pb(x.st); if(pre1[x.st]>=pre1[v]) d2[x.st]=d2[v]+x.nd; else d2[x.st]=d2[v]-x.nd; } } for(int i=1;i<=t;i++) cin>>U[i]>>V[i]; for(int i=1;i<=t;i++) { int u=U[i],v=V[i]; int l=lca(u,v); cout<<d1[u]+d1[v]-2*d1[l]<<" "; l=lca1(u,v); cout<<d2[u]+d2[v]-2*d2[l]<<endl; } return 0; }

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

Main.cpp:2:12: error: stray '#' in program
    2 | SUBMISSION #653143
      |            ^
Main.cpp:3:3: error: invalid preprocessing directive #Submission
    3 | # Submission timeUTC+2 Handle Problem Language Result Execution time Memory
      |   ^~~~~~~~~~
Main.cpp:79:2: error: extended character   is not valid in an identifier
   79 |     int l=0,l1=0,cc=0;
      |  ^
Main.cpp:79:5: error: extended character   is not valid in an identifier
   79 |     int l=0,l1=0,cc=0;
      |    ^
Main.cpp:85:2: error: extended character   is not valid in an identifier
   85 |             cc++;
      |  ^
Main.cpp:85:5: error: extended character   is not valid in an identifier
   85 |             cc++;
      |    ^
Main.cpp:85:8: error: extended character   is not valid in an identifier
   85 |             cc++;
      |      ^
Main.cpp:85:11: error: extended character   is not valid in an identifier
   85 |             cc++;
      |        ^
Main.cpp:85:14: error: extended character   is not valid in an identifier
   85 |             cc++;
      |          ^
Main.cpp:85:17: error: extended character   is not valid in an identifier
   85 |             cc++;
      |            ^
Main.cpp:91:2: error: extended character   is not valid in an identifier
   91 |             else if(cc>1)
      |  ^
Main.cpp:91:5: error: extended character   is not valid in an identifier
   91 |             else if(cc>1)
      |    ^
Main.cpp:91:8: error: extended character   is not valid in an identifier
   91 |             else if(cc>1)
      |      ^
Main.cpp:91:11: error: extended character   is not valid in an identifier
   91 |             else if(cc>1)
      |        ^
Main.cpp:91:14: error: extended character   is not valid in an identifier
   91 |             else if(cc>1)
      |          ^
Main.cpp:91:17: error: extended character   is not valid in an identifier
   91 |             else if(cc>1)
      |            ^
Main.cpp:93:2: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |  ^
Main.cpp:93:5: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |    ^
Main.cpp:93:8: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |      ^
Main.cpp:93:11: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |        ^
Main.cpp:93:14: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |          ^
Main.cpp:93:17: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |            ^
Main.cpp:93:20: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |              ^
Main.cpp:93:23: error: extended character   is not valid in an identifier
   93 |                 if(cc==2) G3[v].pb(l1);
      |                ^
Main.cpp:106:2: error: extended character   is not valid in an identifier
  106 |     if(is[v]||cc>1) last1[v]=v;
      |  ^
Main.cpp:106:5: error: extended character   is not valid in an identifier
  106 |     if(is[v]||cc>1) last1[v]=v;
      |    ^
Main.cpp:1:1: error: 'oj' does not name a type
    1 | oj.uz
      | ^~
In file included from /usr/include/c++/10/cmath:43,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Main.cpp:8:
/usr/include/c++/10/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++/10/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++/10/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++/10/bits/exception_ptr.h:40,
                 from /usr/include/c++/10/exception:147,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/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++/10/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:31,
                 from /usr/include/c++/10/bits/std_abs.h:38,
                 from /usr/include/c++/10/cmath:47,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/10/bits/exception_ptr.h:40,
                 from /usr/include/c++/10/exception:147,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/new:127:41: error: attributes after parenthesized initializer ignored [-fpermissive]
  127 |   __attribute__((__externally_visible__));
      |                                         ^
/usr/include/c++/10/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++/10/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:31,
                 from /usr/include/c++/10/bits/std_abs.h:38,
                 from /usr/include/c++/10/cmath:47,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/10/bits/exception_ptr.h:40,
                 from /usr/include/c++/10/exception:147,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/new:129:41: error: attributes after parenthesized initializer ignored [-fpermissive]
  129 |   __attribute__((__externally_visible__));
      |                                         ^
/usr/include/c++/10/new:135:34: error: 'std::size_t' has not been declared
  135 | void operator delete(void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
      |                                  ^~~~~~
/usr/include/c++/10/new:137:36: error: 'std::size_t' has not been declared
  137 | void operator delete[](void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
      |                                    ^~~~~~
/usr/include/c++/10/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++/10/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:31,
                 from /usr/include/c++/10/bits/std_abs.h:38,
                 from /usr/include/c++/10/cmath:47,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/10/bits/exception_ptr.h:40,
                 from /usr/include/c++/10/exception:147,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/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++/10/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++/10/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:31,
                 from /usr/include/c++/10/bits/std_abs.h:38,
                 from /usr/include/c++/10/cmath:47,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/10/bits/exception_ptr.h:40,
                 from /usr/include/c++/10/exception:147,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/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++/10/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++/10/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:31,
                 from /usr/include/c++/10/bits/std_abs.h:38,
                 from /usr/include/c++/10/cmath:47,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/10/bits/exception_ptr.h:40,
                 from /usr/include/c++/10/exception:147,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/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++/10/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++/10/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:31,
                 from /usr/include/c++/10/bits/std_abs.h:38,
                 from /usr/include/c++/10/cmath:47,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:41,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:209:23: note: 'size_t' declared here
  209 | typedef __SIZE_TYPE__ size_t;
      |                       ^~~~~~
In file included from /usr/include/c++/10/bits/exception_ptr.h:40,
                 from /usr/include/c++/10/exception:147,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/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++/10/bits/move.h:57,
                 from /usr/include/c++/10/bits/nested_exception.h:40,
                 from /usr/include/c++/10/exception:148,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/type_traits:402:31: error: 'std::size_t' has not been declared
  402 |   template<typename _Tp, std::size_t _Size>
      |                               ^~~~~~
/usr/include/c++/10/type_traits:403:25: error: '_Size' was not declared in this scope
  403 |     struct is_array<_Tp[_Size]>
      |                         ^~~~~
/usr/include/c++/10/type_traits:403:31: error: template argument 1 is invalid
  403 |     struct is_array<_Tp[_Size]>
      |                               ^
/usr/include/c++/10/type_traits:508:42: error: 'nullptr_t' is not a member of 'std'; did you mean 'nullptr_t'?
  508 |     struct __is_null_pointer_helper<std::nullptr_t>
      |                                          ^~~~~~~~~
In file included from /usr/include/c++/10/cstddef:50,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:45,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:433:29: note: 'nullptr_t' declared here
  433 |   typedef decltype(nullptr) nullptr_t;
      |                             ^~~~~~~~~
In file included from /usr/include/c++/10/bits/move.h:57,
                 from /usr/include/c++/10/bits/nested_exception.h:40,
                 from /usr/include/c++/10/exception:148,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/type_traits:508:42: error: 'nullptr_t' is not a member of 'std'; did you mean 'nullptr_t'?
  508 |     struct __is_null_pointer_helper<std::nullptr_t>
      |                                          ^~~~~~~~~
In file included from /usr/include/c++/10/cstddef:50,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:45,
                 from Main.cpp:8:
/usr/lib/gcc/x86_64-linux-gnu/10/include/stddef.h:433:29: note: 'nullptr_t' declared here
  433 |   typedef decltype(nullptr) nullptr_t;
      |                             ^~~~~~~~~
In file included from /usr/include/c++/10/bits/move.h:57,
                 from /usr/include/c++/10/bits/nested_exception.h:40,
                 from /usr/include/c++/10/exception:148,
                 from /usr/include/c++/10/ios:39,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from Main.cpp:8:
/usr/include/c++/10/type_traits:508:51: error: template argument 1 is invalid
  508 |     struct __is_null_pointer_helper<std::nullptr_t>
      |