0_0_36571157_23183.cpp:27:1: error: 'mint' does not name a type
mint p[N];
^
0_0_36571157_23183.cpp:81:91: error: 'template<class T> template<class U> typename std::enable_if<std::is_same<typename Modular<U>::Type, long long int>::value, Modular<T> >::type& Modular<T>::operator*=(const Modular<T>&)' cannot be overloaded
typename enable_if<is_same<typename Modular<U>::Type, long long>::value, Modular>::type& operator*=(const Modular& rhs) {
^
0_0_36571157_23183.cpp:76:85: error: with 'template<class T> template<class U> typename std::enable_if<std::is_same<typename Modular<U>::Type, long long int>::value, Modular<T> >::type& Modular<T>::operator*=(const Modular<T>&)'
typename enable_if<is_same<typename Modular<U>::Type, int>::value, Modular>::type& operator*=(const Modular& rhs) {
^
0_0_36571157_23183.cpp: In instantiation of 'class Modular<std::integral_constant<long long int, 998244353ll> >':
0_0_36571157_23183.cpp:174:7: required from here
0_0_36571157_23183.cpp:71:10: error: postfix 'Modular<T> Modular<T>::operator++(long long int) [with T = std::integral_constant<long long int, 998244353ll>]' must take 'int' as its argument
Modular operator++(int) { Modular result(*this); *this += 1; return result; }
^
0_0_36571157_23183.cpp:72:10: error: postfix 'Modular<T> Modular<T>::operator--(long long int) [with T = std::integral_constant<long long int, 998244353ll>]' must take 'int' as its argument
Modular operator--(int) { Modular result(*this); *this -= 1; return result; }
^
0_0_36571157_23183.cpp: In function 'void pushdown(long long int)':
0_0_36571157_23183.cpp:191:17: error: 'p' was not declared in this scope
tr[ls].val *= p[tr[ls].lazy];
^
0_0_36571157_23183.cpp: In function 'int main()':
0_0_36571157_23183.cpp:301:4: error: 'p' was not declared in this scope
p[i] = 1;
^
0_0_36571157_23183.cpp:305:4: error: 'p' was not declared in this scope
p[i] = p[i - 1] * 2;
^
|