UVA 11159 Factors and Multiples (最大独立集)
2015-11-13 00:25
507 查看
题意:
两个集合,如果B集合元素是A的倍数的话,就表明这俩有关系,问从这俩集合删除最少的元素使得没有关系
分析:
赤果果的二分图最大独立集=n−最大匹配,那么要删除的就是最大匹配数了
注意别模0了,这里Q=k∗P,由于k为整数也就是说0是任何数的倍数−−,因为0=0∗p
代码:
两个集合,如果B集合元素是A的倍数的话,就表明这俩有关系,问从这俩集合删除最少的元素使得没有关系
分析:
赤果果的二分图最大独立集=n−最大匹配,那么要删除的就是最大匹配数了
注意别模0了,这里Q=k∗P,由于k为整数也就是说0是任何数的倍数−−,因为0=0∗p
代码:
// // Created by TaoSama on 2015-11-07 // Copyright (c) 2015 TaoSama. All rights reserved. // //#pragma comment(linker, "/STACK:1024000000,1024000000") #include <algorithm> #include <cctype> #include <cmath> #include <cstdio> #include <cstdlib> #include <cstring> #include <iomanip> #include <iostream> #include <map> #include <queue> #include <string> #include <set> #include <vector> using namespace std; #define pr(x) cout << #x << " = " << x << " " #define prln(x) cout << #x << " = " << x << endl const int N = 1e5 + 10, INF = 0x3f3f3f3f, MOD = 1e9 + 7; int n, m, a[105], b[105]; int g[105][105], match[105]; bool vis[105]; bool dfs(int u) { for(int v = 1; v <= m; ++v) { if(!g[u][v] || vis[v]) continue; vis[v] = true; if(!match[v] || dfs(match[v])) { match[v] = u; return true; } } return false; } int main() { #ifdef LOCAL freopen("C:\\Users\\TaoSama\\Desktop\\in.txt", "r", stdin); // freopen("C:\\Users\\TaoSama\\Desktop\\out.txt","w",stdout); #endif ios_base::sync_with_stdio(0); int t; scanf("%d", &t); int kase = 0; while(t--) { scanf("%d", &n); for(int i = 1; i <= n; ++i) scanf("%d", a + i); scanf("%d", &m); for(int i = 1; i <= m; ++i) scanf("%d", b + i); memset(g, 0, sizeof g); for(int i = 1; i <= n; ++i) for(int j = 1; j <= m; ++j) if(a[i] && b[j] % a[i] == 0) g[i][j] = 1; else if(!b[j]) g[i][j] = 1; memset(match, 0, sizeof match); int ans = 0; for(int i = 1; i <= n; ++i) { memset(vis, 0, sizeof vis); ans += dfs(i); } printf("Case %d: %d\n", ++kase, ans); } return 0; }
相关文章推荐
- 分布式算法 3 最大独立集
- 【日常学习】【二分图匹配】【匈牙利算法】codevs4265 大智的妹子们题解
- UVALive 4288 Cat vs. Dog
- 二分图的概念和几种用法
- 二分图最大匹配总结(匈牙利算法)
- PAT 1021. Safe Fruit (35)
- poj1419Graph Coloring(一般图最大独立集或着最大团)
- BZOJ1040 骑士
- poj2771 Guardian of Decency
- QDUOJ 29 帅气的HYC与N皇后(最大独立集)
- POJ 1466 Girls and Boys(最大独立集)
- HDU 2768 Cat vs. Dog 【二分匹配之最大独立集】
- 二分图中对最小顶点覆盖、最小边覆盖、最大独立集的理解
- hihocoder1158 质数相关
- HDU 4619 Warm up 2(贪心、并查集 | 二分图最大独立集)
- HDU 3829 Cat VS Dog(最大独立集|二分图最大匹配)
- 方格取数(2) (最大独立集+最大流+网络流)
- 【SSLGZ 1344】Knights
- HDU5556Land of Farms 【二分匹配+最大独立集+奇偶分类】
- Girls and Boys poj1466 二分图最大独立集