poj 3185 高斯消元 枚举变元
来源:互联网 发布:初中编程学哪个 编辑:程序博客网 时间:2024/06/01 09:14
变元不确定要枚举否则不保证解最优
#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>using namespace std;int a[25][25],va[25],ans[25] = {0},cnt;void dfs(int pre){ if(pre==20) { int pre3 = 0,pre4 = 0; for(int i=0;i<20;i++)pre4+=ans[i]; for(int i=0;i<20;i++) { int pre2 = 0; for(int j=0;j<20;j++) if(j!=i&&ans[j]&&a[i][j])pre2^=1; pre3+=(a[i][20]^pre2); } //printf("%d %d\n",pre3,pre4); cnt = min(cnt,pre3+pre4); return ; } ans[pre] = 1; dfs(pre+1); ans[pre] = 0; dfs(pre+1);}int gaos(int n){ int i,j; for(i=0,j=0;j<n&&i<n;j++) { int k; for(k=i;k<n;k++) if(a[k][j])break; if(a[k][j]) { for(int r=0;r<=n;r++)swap(a[i][r],a[k][r]); for(int k=0;k<n;k++) if(k!=i&&a[k][j]) for(int r=j;r<=n;r++) a[k][r]^=a[i][r]; i++; } } cnt = 1000; dfs(i); return cnt;}int main(){ memset(a,0,sizeof(a)); for(int i=0;i<20;i++)scanf("%d",&va[i]); for(int i=0;i<20;i++) { a[i][20] = va[i]; for(int j=-1;j<=1;j++) if(i+j>=0&&i+j<20) a[i+j][i] = 1; } printf("%d\n",gaos(20)); return 0;}
0 0
- poj 3185 高斯消元 枚举变元
- POJ 3185 The Water Bowls 高斯消元+枚举变元
- POJ 3185 The Water Bowls(高斯消元,枚举变元)
- poj 3185 The Water Bowls 【高斯消元 + 枚举自由变元】
- POJ 3185 The Water Bowls(高斯消元法,枚举自由变元)
- POJ 1753 Flip Game(枚举变元的高斯消元)
- poj 1681 Painter's Problem 高斯消元 枚举自由变元
- poj 1681 Painter's Problem 【高斯消元 枚举自由变元】
- poj The Water Bowls 高斯消元枚举自由变元
- Ural1042(高斯消元+枚举自由变元)
- POJ3185 高斯消元 +枚举自由变元
- poj 1681 Painter's Problem 【高斯消元 + 状压枚举自由变元】
- poj 1753 Flip Game 【高斯消元 + 状压枚举自由变元】
- POJ 1753 Flip Game(高斯消元法,枚举自由变元)
- 高斯消元 POJ 1222 POJ 1681(枚举自由变元)POJ 1753(两次高斯消元) POJ 1830 HDU 5833 (高斯消元,素数分解)POJ 3158 (集合压缩枚举自由变元)
- HDU 4200 Bad Wiring 高斯消元 +枚举自由变元
- 高斯消元异或枚举变元(poj1681)
- poj 1830 开关问题 【高斯消元 求解自由变元数目】
- [HDU5828] Rikka with Sequence [2016 Multi-University Training Contest 8(2016多校联合训练8) 1008]
- Thread 方法
- 总结——在CCS5.5.0中如何将代码烧写到DSP28335的Flash中
- Java 集合框架源码分析(四)——LinkedHashMap
- HTML引用资源相对路径
- poj 3185 高斯消元 枚举变元
- jsp中el表达式无效的解决办法
- 数组的应用深入
- POJ 1655 Balancing Act(简单树型dp)
- POJ2728 Desert King 最优比例生成树
- 指针的简单应用
- android2.6.1——知晓当前活动
- 指针的深入
- 结构体初识