首页 > 代码库 > 【BZOJ】【1770】【Usaco2009 Nov】lights 灯
【BZOJ】【1770】【Usaco2009 Nov】lights 灯
高斯消元解XOR方程组
一眼看上去是高斯消元解xor方程组……但是不会写……sad
去膜拜了Hzwer和ZYF
Hzwer啥也没说,还是zyf靠谱……
当多解的时候就需要爆搜枚举自由元的情况,找最优解……
o(︶︿︶)o 唉我还是太弱了
zyf的解释:
1 inline void dfs(int x) 2 { 3 if(tot>=mn)return;//最优性剪枝 4 if(!x){mn=min(mn,tot);return;}//终点 5 if(f[x][x])//已被限制是否需要按下 6 { 7 int t=f[x][n+1]; 8 for2(i,x+1,n)if(f[x][i])t^=ans[i]; 9 ans[x]=t;10 if(t)tot++;11 dfs(x-1);//继续深搜12 if(t)tot--;//还原,回溯13 }14 else//自由变量15 {16 ans[x]=0;dfs(x-1);//假设不按该灯开关17 ans[x]=1;tot++;dfs(x-1);tot--;//假设按该灯开关18 }19 }
View Code
【BZOJ】【1770】【Usaco2009 Nov】lights 灯
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。