Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- poly FWHT(poly P, bool inverse) {
- for (len = 1; 2 * len <= degree(P); len <<= 1) {
- for (i = 0; i < degree(P); i += 2 * len) {
- for (j = 0; j < len; j++) {
- u = P[i + j];
- v = P[i + len + j];
- P[i + j] = u + v;
- P[i + len + j] = u - v;
- }
- }
- }
- if (inverse) {
- for (i = 0; i < degree(P); i++)
- P[i] = P[i] / degree(P);
- }
- return P;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement