F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

View Compilation Error

0_0_39723001_27971.cpp: In member function 'static_modint<m>::mint static_modint<m>::pow(ll) const':
0_0_39723001_27971.cpp:81:9: error: there are no arguments to 'assert' that depend on a template parameter, so a declaration of 'assert' must be available [-fpermissive]
   81 |         assert(n >= 0);
      |         ^~~~~~
0_0_39723001_27971.cpp:81:9: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
0_0_39723001_27971.cpp: At global scope:
0_0_39723001_27971.cpp:155:13: error: 'vector' does not name a type
  155 |     typedef vector<mint> poly;
      |             ^~~~~~
0_0_39723001_27971.cpp: In function 'int NTT::primitive_root(ll)':
0_0_39723001_27971.cpp:169:9: error: 'assert' was not declared in this scope
  169 |         assert(0);
      |         ^~~~~~
0_0_39723001_27971.cpp:1:1: note: 'assert' is defined in header '<cassert>'; did you forget to '#include <cassert>'?
  +++ |+#include <cassert>
    1 | typedef long long ll;
0_0_39723001_27971.cpp: At global scope:
0_0_39723001_27971.cpp:178:14: error: 'int NTT::norm' redeclared as different kind of entity
  178 |     int norm(poly& a)
      |              ^~~~
0_0_39723001_27971.cpp:172:9: note: previous declaration 'int NTT::norm(int)'
  172 |     int norm(int n)
      |         ^~~~
0_0_39723001_27971.cpp:178:14: error: 'poly' was not declared in this scope
  178 |     int norm(poly& a)
      |              ^~~~
0_0_39723001_27971.cpp:178:20: error: 'a' was not declared in this scope
  178 |     int norm(poly& a)
      |                    ^
0_0_39723001_27971.cpp:187:5: error: 'vector' does not name a type
  187 |     vector<mint> Omega(const int n = 1 << (static_cast<int>(std::log2(maxn << 2))))
      |     ^~~~~~
0_0_39723001_27971.cpp:201:14: error: 'Omega' was not declared in this scope
  201 |     auto W = Omega();
      |              ^~~~~
0_0_39723001_27971.cpp:203:10: error: variable or field 'DIF' declared void
  203 |     void DIF(poly& a)
      |          ^~~
0_0_39723001_27971.cpp:203:14: error: 'poly' was not declared in this scope
  203 |     void DIF(poly& a)
      |              ^~~~
0_0_39723001_27971.cpp:203:20: error: 'a' was not declared in this scope
  203 |     void DIF(poly& a)
      |                    ^
0_0_39723001_27971.cpp:221:10: error: variable or field 'IDIT' declared void
  221 |     void IDIT(poly& a)
      |          ^~~~
0_0_39723001_27971.cpp:221:15: error: 'poly' was not declared in this scope
  221 |     void IDIT(poly& a)
      |               ^~~~
0_0_39723001_27971.cpp:221:21: error: 'a' was not declared in this scope
  221 |     void IDIT(poly& a)
      |                     ^
0_0_39723001_27971.cpp:246:10: error: variable or field 'DFT' declared void
  246 |     void DFT(poly& a, int n)
      |          ^~~
0_0_39723001_27971.cpp:246:14: error: 'poly' was not declared in this scope
  246 |     void DFT(poly& a, int n)
      |              ^~~~
0_0_39723001_27971.cpp:246:20: error: 'a' was not declared in this scope
  246 |     void DFT(poly& a, int n)
      |                    ^
0_0_39723001_27971.cpp:246:23: error: expected primary-expression before 'int'
  246 |     void DFT(poly& a, int n)
      |                       ^~~
0_0_39723001_27971.cpp:251:10: error: variable or field 'IDFT' declared void
  251 |     void IDFT(poly& a, int n)
      |          ^~~~
0_0_39723001_27971.cpp:251:15: error: 'poly' was not declared in this scope
  251 |     void IDFT(poly& a, int n)
      |               ^~~~
0_0_39723001_27971.cpp:251:21: error: 'a' was not declared in this scope
  251 |     void IDFT(poly& a, int n)
      |                     ^
0_0_39723001_27971.cpp:251:24: error: expected primary-expression before 'int'
  251 |     void IDFT(poly& a, int n)
      |                        ^~~
0_0_39723001_27971.cpp:258:5: error: 'poly' does not name a type
  258 |     poly& dot(poly& a, poly& b)
      |     ^~~~
0_0_39723001_27971.cpp:265:5: error: 'poly' does not name a type
  265 |     poly poly_mul(poly A, poly B)
      |     ^~~~
0_0_39723001_27971.cpp:279:5: error: 'poly' does not name a type
  279 |     poly inv2k(poly a)
      |     ^~~~
0_0_39723001_27971.cpp:298:5: error: 'poly' does not name a type
  298 |     poly poly_inv(poly a)
      |     ^~~~
0_0_39723001_27971.cpp:307:5: error: 'poly' does not name a type
  307 |     poly poly_dev(poly f)
      |     ^~~~
0_0_39723001_27971.cpp:315:5: error: 'poly' does not name a type
  315 |     poly poly_idev(poly f)
      |     ^~~~
0_0_39723001_27971.cpp:323:5: error: 'poly' does not name a type
  323 |     poly poly_ln(poly f)
      |     ^~~~
0_0_39723001_27971.cpp:330:5: error: 'poly' does not name a type
  330 |     poly poly_exp(const poly& f, int deg)
      |     ^~~~
0_0_39723001_27971.cpp:350:5: error: 'poly' does not name a type
  350 |     poly poly_sqrt(poly& f, int deg)
      |     ^~~~
0_0_39723001_27971.cpp:370:5: error: 'poly' does not name a type
  370 |     poly poly_pow(poly f, int k)
      |     ^~~~
0_0_39723001_27971.cpp:378:5: error: 'poly' does not name a type
  378 |     poly poly_f(int l, int r)
      |     ^~~~
0_0_39723001_27971.cpp:392:5: error: 'poly' does not name a type
  392 |     poly operator+=(poly& A, const poly& B)
      |     ^~~~
0_0_39723001_27971.cpp:400:5: error: 'poly' does not name a type
  400 |     poly operator-=(poly& A, const poly& B)
      |     ^~~~
0_0_39723001_27971.cpp:408:5: error: 'poly' does not name a type
  408 |     poly operator*=(poly& A, const poly& B)
      |     ^~~~
0_0_39723001_27971.cpp:421:5: error: 'poly' does not name a type
  421 |     poly operator/=(poly& A, const poly& B)
      |     ^~~~
0_0_39723001_27971.cpp:428:5: error: 'poly' does not name a type
  428 |     poly operator+(poly A, const poly& B)
      |     ^~~~
0_0_39723001_27971.cpp:433:5: error: 'poly' does not name a type
  433 |     poly operator-(poly A, const poly& B)
      |     ^~~~
0_0_39723001_27971.cpp:438:5: error: 'poly' does not name a type
  438 |     poly operator*(poly A, const poly& B)
      |     ^~~~
0_0_39723001_27971.cpp:443:5: error: 'poly' does not name a type
  443 |     poly operator/(poly A, const poly& B)
      |     ^~~~


Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-11-26 09:25:59, Gzip enabled