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_38435123_2967.cpp: In static member function 'static std::vector<_RealType> FFTMod<mint, MInt, FFT>::conv(const std::vector<_RealType>&, const std::vector<_RealType>&)':
0_0_38435123_2967.cpp:321:26: error: 'mod0' is not a valid template argument for type 'const int&' because object 'mod0' has not external linkage
   using mint0 = MInt<mod0>;
                          ^
0_0_38435123_2967.cpp:322:26: error: 'mod1' is not a valid template argument for type 'const int&' because object 'mod1' has not external linkage
   using mint1 = MInt<mod1>;
                          ^
0_0_38435123_2967.cpp:323:26: error: 'mod2' is not a valid template argument for type 'const int&' because object 'mod2' has not external linkage
   using mint2 = MInt<mod2>;
                          ^
0_0_38435123_2967.cpp:324:10: error: 'mint0' was not declared in this scope
   vector<mint0> l0(n), r0(m);
          ^
0_0_38435123_2967.cpp:324:15: error: template argument 1 is invalid
   vector<mint0> l0(n), r0(m);
               ^
0_0_38435123_2967.cpp:324:15: error: template argument 2 is invalid
0_0_38435123_2967.cpp:324:19: error: invalid type in declaration before '(' token
   vector<mint0> l0(n), r0(m);
                   ^
0_0_38435123_2967.cpp:325:10: error: 'mint1' was not declared in this scope
   vector<mint1> l1(n), r1(m);
          ^
0_0_38435123_2967.cpp:325:15: error: template argument 1 is invalid
   vector<mint1> l1(n), r1(m);
               ^
0_0_38435123_2967.cpp:325:15: error: template argument 2 is invalid
0_0_38435123_2967.cpp:325:19: error: invalid type in declaration before '(' token
   vector<mint1> l1(n), r1(m);
                   ^
0_0_38435123_2967.cpp:326:10: error: 'mint2' was not declared in this scope
   vector<mint2> l2(n), r2(m);
          ^
0_0_38435123_2967.cpp:326:15: error: template argument 1 is invalid
   vector<mint2> l2(n), r2(m);
               ^
0_0_38435123_2967.cpp:326:15: error: template argument 2 is invalid
0_0_38435123_2967.cpp:326:19: error: invalid type in declaration before '(' token
   vector<mint2> l2(n), r2(m);
                   ^
0_0_38435123_2967.cpp:327:35: error: invalid types 'int[int]' for array subscript
   for (int i = 0; i < n; ++i) l0[i] = (int) as[i], l1[i] = (int) as[i], l2[i] = (int) as[i];
                                   ^
0_0_38435123_2967.cpp:327:56: error: invalid types 'int[int]' for array subscript
   for (int i = 0; i < n; ++i) l0[i] = (int) as[i], l1[i] = (int) as[i], l2[i] = (int) as[i];
                                                        ^
0_0_38435123_2967.cpp:327:77: error: invalid types 'int[int]' for array subscript
   for (int i = 0; i < n; ++i) l0[i] = (int) as[i], l1[i] = (int) as[i], l2[i] = (int) as[i];
                                                                             ^
0_0_38435123_2967.cpp:328:35: error: invalid types 'int[int]' for array subscript
   for (int j = 0; j < m; ++j) r0[j] = (int) bs[j], r1[j] = (int) bs[j], r2[j] = (int) bs[j];
                                   ^
0_0_38435123_2967.cpp:328:56: error: invalid types 'int[int]' for array subscript
   for (int j = 0; j < m; ++j) r0[j] = (int) bs[j], r1[j] = (int) bs[j], r2[j] = (int) bs[j];
                                                        ^
0_0_38435123_2967.cpp:328:77: error: invalid types 'int[int]' for array subscript
   for (int j = 0; j < m; ++j) r0[j] = (int) bs[j], r1[j] = (int) bs[j], r2[j] = (int) bs[j];
                                                                             ^
0_0_38435123_2967.cpp:329:12: error: the value of 'mint0' is not usable in a constant expression
   l0 = FFT<mint0>::conv(l0, r0);
            ^
0_0_38435123_2967.cpp:324:10: note: 'mint0' was not declared 'constexpr'
   vector<mint0> l0(n), r0(m);
          ^
0_0_38435123_2967.cpp:329:17: error: type/value mismatch at argument 1 in template parameter list for 'template<class> class FFT'
   l0 = FFT<mint0>::conv(l0, r0);
                 ^
0_0_38435123_2967.cpp:329:17: error:   expected a type, got 'mint0'
0_0_38435123_2967.cpp:330:12: error: the value of 'mint1' is not usable in a constant expression
   l1 = FFT<mint1>::conv(l1, r1);
            ^
0_0_38435123_2967.cpp:325:10: note: 'mint1' was not declared 'constexpr'
   vector<mint1> l1(n), r1(m);
          ^
0_0_38435123_2967.cpp:330:17: error: type/value mismatch at argument 1 in template parameter list for 'template<class> class FFT'
   l1 = FFT<mint1>::conv(l1, r1);
                 ^
0_0_38435123_2967.cpp:330:17: error:   expected a type, got 'mint1'
0_0_38435123_2967.cpp:331:12: error: the value of 'mint2' is not usable in a constant expression
   l2 = FFT<mint2>::conv(l2, r2);
            ^
0_0_38435123_2967.cpp:326:10: note: 'mint2' was not declared 'constexpr'
   vector<mint2> l2(n), r2(m);
          ^
0_0_38435123_2967.cpp:331:17: error: type/value mismatch at argument 1 in template parameter list for 'template<class> class FFT'
   l2 = FFT<mint2>::conv(l2, r2);
                 ^
0_0_38435123_2967.cpp:331:17: error:   expected a type, got 'mint2'
0_0_38435123_2967.cpp:333:9: error: 'mint1' does not name a type
   const mint1 im0 = 1 / mint1(mod0);
         ^
0_0_38435123_2967.cpp:334:9: error: 'mint2' does not name a type
   const mint2 im1 = 1 / mint2(mod1), im0m1 = im1 / mod0;
         ^
0_0_38435123_2967.cpp:337:23: error: invalid types 'int[int]' for array subscript
    int y0 = (int) l0[i];
                       ^
0_0_38435123_2967.cpp:338:20: error: 'im0' was not declared in this scope
    int y1 = (int) (im0 * (l1[i] - y0));
                    ^
0_0_38435123_2967.cpp:338:31: error: invalid types 'int[int]' for array subscript
    int y1 = (int) (im0 * (l1[i] - y0));
                               ^
0_0_38435123_2967.cpp:339:20: error: 'im0m1' was not declared in this scope
    int y2 = (int) (im0m1 * (l2[i] - y0) - im1 * y1);
                    ^
0_0_38435123_2967.cpp:339:33: error: invalid types 'int[int]' for array subscript
    int y2 = (int) (im0m1 * (l2[i] - y0) - im1 * y1);
                                 ^
0_0_38435123_2967.cpp:339:43: error: 'im1' was not declared in this scope
    int y2 = (int) (im0m1 * (l2[i] - y0) - im1 * y1);
                                           ^
0_0_38435123_2967.cpp: In function 'int main()':
0_0_38435123_2967.cpp:350:31: error: type/value mismatch at argument 2 in template parameter list for 'template<class mint, template<const int& <anonymous> > class MInt, template<class> class FFT> struct FFTMod'
  using FFT = FFTMod<mint, MInt>;
                               ^
0_0_38435123_2967.cpp:350:31: error:   expected a template of type 'template<const int& <anonymous> > class MInt', got 'template<unsigned int mod> struct MInt'
0_0_38435123_2967.cpp:351:29: error: type/value mismatch at argument 2 in template parameter list for 'template<class T, class FFT> struct Poly'
  using poly = Poly<mint, FFT>;
                             ^
0_0_38435123_2967.cpp:351:29: error:   expected a type, got 'FFT'
0_0_38435123_2967.cpp:363:85: error: no matching function for call to 'CDQDivdeAndConquer(std::vector<MInt2>&, std::vector<MInt2>&, main()::<lambda(int, mint)>)'
   CDQDivdeAndConquer<mint, FFT>(fs, as, [&](int i, mint x) { return as[i] * i - x; });
                                                                                     ^
0_0_38435123_2967.cpp:363:85: note: candidate is:
0_0_38435123_2967.cpp:142:6: note: template<class T, class FFT> void CDQDivdeAndConquer(std::vector<_RealType>&, const std::vector<_RealType>&, const std::function<T(int, const T&)>&)
 void CDQDivdeAndConquer(vector<T> &as, const vector<T> &bs, const function<T(int, const T&)> &f) {
      ^
0_0_38435123_2967.cpp:142:6: note:   template argument deduction/substitution failed:
0_0_38435123_2967.cpp: In lambda function:
0_0_38435123_2967.cpp:367:4: error: 'poly' was not declared in this scope
    poly rs(n / g + 1);
    ^
0_0_38435123_2967.cpp:369:5: error: 'rs' was not declared in this scope
     rs[i] = fs[i * g];
     ^
0_0_38435123_2967.cpp:371:11: error: 'rs' was not declared in this scope
    return rs.exp()[n / g] * fac[n];
           ^


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-29 20:10:32, Gzip enabled