POJ 2724 Purifying Machine
来源:互联网 发布:德国程序员工资水平 编辑:程序博客网 时间:2024/05/16 09:34
大意:给定感染的物品(二进制)表示,一次操作可以消去一个物品,如果两个物品的二进制相差一位的话,那么可以一次消去两个,问最少多少次消去。
思路:通过最大匹配求节省的次数(ans/2),然后用点集数减去已消去的物品数加上以前的操作数ans/2即可,res = ans/2, res += nx-ans;
给出建图的代码:
int check(int a, int b) //相差一位 {int c = a^b;int num = 0;while(c){c &= (c-1);num++;}return num == 1;}int read_case(){readint(n), readint(m);if(!n) return 0;init();nx = 0;bool vis[maxn] = {0};for(int i = 0; i < m; i++){scanf("%s", STR[i]);int flag = -1;int t = 0;for(int j = 0; j < n; j++){if(STR[i][j] == '*'){flag = j;continue;}if(STR[i][j] == '1') t += fac[j];}if(!vis[t]) { vis[t] = 1; num[nx++] = t;}if(flag != -1 && !vis[t+fac[flag]]){vis[t+fac[flag]] = 1;num[nx++] = t+fac[flag];}}return 1;}
- POJ 2724 Purifying Machine
- POJ-2724-Purifying Machine
- POJ 2724 Purifying Machine
- poj 2724 Purifying Machine 二分匹配
- poj 2724 Purifying Machine 最小路径覆盖
- poj 2724 Purifying Machine (最小边覆盖)
- POJ 2724 Purifying Machine 已翻译
- 2724 Purifying Machine //MAXMATCH
- POJ 2724 Purifying Machine (二分图最大独立集Hungary)
- 【二分图+最大匹配】北大 poj 2724 Purifying Machine
- poj 2724 Purifying Machine 二分图最大匹配
- POJ 2724 Purifying Machine(二分图最大匹配)
- POJ 2724 Purifying Machine(最大独立集)
- POJ - 2724 Purifying Machine 二分图 最大匹配
- POJ 2724 Purifying Machine(二分图最大匹配)
- poj 2724 Purifying Machine(二分图最大匹配)
- poj2724 Purifying Machine
- poj2724 Purifying Machine
- hdu 3836 Equivalent Sets(强连通,tarjan,4级)
- test
- Python中range
- VS error C1083: 无法打开包括文件:“gl\glew.h”: No such file or directory\(转)
- 关于EFI toolkit的编译环境的搭建
- POJ 2724 Purifying Machine
- POJ1007
- c++模板类/函数的申明与定义
- java获取本机IP地址
- Netty学习
- WinMerge 比较文件夹与文件夹之间的文件差异
- poj 3268 Silver Cow Party
- XP 卸载IE8
- GDB调试core文件样例(如何定位Segment fault)