Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- constexpr int mod = 998244353;
- struct modint {
- int data; modint(int x = 0): data(x) {pull();}
- modint& pull() {if (data < 0) data = (data + mod) % mod; return *this;}
- };
- modint operator+(modint a, modint b) {return modint((a.data + b.data) % mod) .pull();}
- modint operator-(modint a, modint b) {return modint((a.data - b.data) % mod) .pull();}
- modint operator*(modint a, modint b) {return modint(int(1LL * a.data * b.data % mod)) .pull();}
- istream& operator>>(istream& is, modint& x) {return is >> x.data;}
- ostream& operator<<(ostream& os, const modint& x) {return os << x.data;}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement