码迷,mamicode.com
首页 > 其他好文 > 详细

线性基求交板子

时间:2019-07-28 10:56:30      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:lse   pre   bre   线性   ret   ==   bsp   div   nbsp   

    _ operator + (const _ &rhs) const {
        _ ret;
        unsigned p[32]{}, f[32]{};
        REP(i,0,31) p[i] = a[i];
        PER(i,0,31) {
            auto x = rhs.a[i], y = 1u<<i;
            PER(j,0,31) if (x>>j&1) {
                if (p[j]) x^=p[j],y^=f[j];
                else {
                    p[j]=x,f[j]=y;
                    break;
                }
            }
            if (x==0) {
                unsigned sum = 0;
                REP(j,0,31) if (y>>j&1) sum ^= rhs.a[j];
                ret.ins(sum);
            }
        }
        return ret;
    }

 

线性基求交板子

标签:lse   pre   bre   线性   ret   ==   bsp   div   nbsp   

原文地址:https://www.cnblogs.com/uid001/p/11258120.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!