| 147 | return 1; |
| 148 | } |
| 149 | poly operator + (const poly &x) const { |
| 150 | int n = max(size(), x.size()); |
| 151 | vector<mint> ans(n); |
| 152 | for(int i = 0; i < n; i++) ans[i] = coef(i) + x.coef(i); |
| 153 | while ((int)ans.size() && ans.back() == 0) ans.pop_back(); |
| 154 | return ans; |
| 155 | } |
| 156 | poly operator - (const poly &x) const { |
| 157 | int n = max(size(), x.size()); |
| 158 | vector<mint> ans(n); |