HDU3829_Cat VS Dog
题目是这样的,给定一些人喜欢某只猫或者狗,讨厌某只猫或者狗。求最多能够同时满足多少人的愿望?
题目很有意思。建模后就很简单了。
对于同一只猫或者狗,如果有一个讨厌,另一个人喜欢,那么这两个连一条边。最终,最大独立集数等于最大匹配数就可以了。。
Orz。
召唤代码君:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <vector>
#define maxn 505
using namespace std; vector<int> likec[maxn],disc[maxn],liked[maxn],disd[maxn];
vector<int> v[maxn];
int n,m,p,ans,t1,t2;
int f[maxn],tag[maxn];
char s1[maxn],s2[maxn]; void init()
{
ans=0;
for (int i=1; i<=p; i++) v[i].clear(),f[i]=0,tag[i]=0;
for (int i=1; i<=n; i++) likec[i].clear(),disc[i].clear();
for (int i=1; i<=m; i++) liked[i].clear(),disd[i].clear();
} int num(char S[])
{
int cur=0;
for (int i=0; S[i]; i++) cur=cur*10+S[i]-'0';
return cur;
} int dfs(int cur,int T)
{
if (tag[cur]==T) return false;
else tag[cur]=T;
for (unsigned i=0; i<v[cur].size(); i++)
{
if (tag[v[cur][i]]==T) continue;
if (f[v[cur][i]]==0 || dfs(f[v[cur][i]],T))
{
f[v[cur][i]]=cur;
f[cur]=v[cur][i];
return true;
}
}
return false;
} int main()
{
while (scanf("%d%d%d",&n,&m,&p)!=EOF)
{
init();
for (int i=1; i<=p; i++)
{
scanf("%s%s",s1,s2);
t1=num(s1+1),t2=num(s2+1);
if (s1[0]=='C') likec[t1].push_back(i);
else liked[t1].push_back(i);
if (s2[0]=='C') disc[t2].push_back(i);
else disd[t2].push_back(i);
}
for (int i=1; i<=n; i++)
for (unsigned x1=0; x1<likec[i].size(); x1++)
for (unsigned x2=0; x2<disc[i].size(); x2++)
{
v[likec[i][x1]].push_back(disc[i][x2]);
v[disc[i][x2]].push_back(likec[i][x1]);
}
for (int i=1; i<=m; i++)
for (unsigned x1=0; x1<liked[i].size(); x1++)
for (unsigned x2=0; x2<disd[i].size(); x2++)
{
v[liked[i][x1]].push_back(disd[i][x2]);
v[disd[i][x2]].push_back(liked[i][x1]);
}
for (int i=1; i<=p; i++)
{
if (f[i]!=0) continue;
if (dfs(i,i)) ans++;
}
printf("%d\n",p-ans);
}
return 0;
}
HDU3829_Cat VS Dog的更多相关文章
- [ZigBee] 12、ZigBee之看门狗定时器——饿了就咬人的GOOD DOG
引言:硬件中的看门狗,不是门卫的意思,而是一只很凶的狗!如果你不按时喂它,它就会让系统重启!这反而是我们想要的功能~ 1.看门狗概述 看门狗定时器(WDT,Watch Dog Timer)是单片机的一 ...
- 斑点检测(LoG,DoG)(下)
斑点检测(LoG,DoG)(下) LoG, DoG, 尺度归一化 上篇文章斑点检测(LoG,DoG)(上)介绍了基于二阶导数过零点的边缘检测方法,现在我们要探讨的是斑点检测.在边缘检测中,寻找的是二阶 ...
- 斑点检测(LoG,DoG) [上]
斑点检测(LoG,DoG) [上] 维基百科,LoG,DoG,DoH 在计算机视觉中,斑点检测是指在数字图像中找出和周围区域特性不同的区域,这些特性包括光照或颜色等.一般图像中斑点区域的像素特性相似甚 ...
- ural 1246. Tethered Dog
1246. Tethered Dog Time limit: 1.0 secondMemory limit: 64 MB A dog is tethered to a pole with a rope ...
- Cat VS Dog
Cat VS Dog Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 125536/65536 K (Java/Others)Total ...
- DoG 、Laplacian、图像金字塔详解
DoG(Difference of Gaussian) DoG (Difference of Gaussian)是灰度图像增强和角点检测的方法,其做法较简单,证明较复杂,具体讲解如下: Differe ...
- HDU 3289 Cat VS Dog (二分匹配 求 最大独立集)
题意:每个人有喜欢的猫和不喜欢的狗.留下他喜欢的猫他就高心,否则不高心.问最后最多有几个人高心. 思路:二分图求最大匹配 #include<cstdio> #include<cstr ...
- 编写一个Animal类,具有属性:种类;具有功能:吃、睡。定义其子类Fish 和Dog,定义主类E,在其main方法中分别创建其对象并测试对象的特性。
package animal; public class Animal { //成员属性 private String kind; public String getKind() { return k ...
- sjtu1586 Dog
Description 隔壁村的阿黑的Dog没有跑, 但Dog已经15岁了, 相当于人类达到了79岁. 为了防止Dog患上犬类认知障碍 (Canine cognitive dysfunction, C ...
随机推荐
- C++构造函数深度探究
1.引子: 以下代码中的输出语句输出0吗,为什么? struct Test { int _a; Test(int a) : _a(a) {} Test() { Test(0); } }; Test o ...
- jenkins的时间与服务器的时间不一致
解决办法:
- java事物详解
一.什么是Java事务 通常的观念认为,事务仅与数据库相关. 事务必须服从ISO/IEC所制定的ACID原则.ACID是原子性(atomicity).一致性(consistency).隔离性 (iso ...
- DNS分离解析IPV6与IPV4用户
IPV6改造中经常会遇到,网站使用了CDN,但是CDN厂商还不支持IPV6的情况,而AAAA.A.CNAME记录互相冲突,想实现IPV6用户得到AAAA记录,IPV4用户得到CNAME记录的需求. 解 ...
- Java创建对象的动作分析
一.Java创建对象时将对象存放到内存的堆中. 创建对象时先执行类成员的初始化,然后才会调用构造函数初始化对象, package com.test.createsort; public class C ...
- 【python 2.7】输入任意字母数字,输出其对应的莫尔斯码并播放声音
#python 2.7 #!/usr/bin/env python # -*- coding:utf-8 -*- import os import winsound,sys,time __author ...
- Go单元测试注意事项及测试单个方法和整个文件的命令
Go程序开发过程中免不了要对所写的单个业务方法进行单元测试,Go提供了 "testing" 包可以实现单元测试用例的编写,不过想要正确编写单元测试需要注意以下三点: Go文件名必须 ...
- Django之Form
目录 一.说明 二.参数说明 三.自定义验证规则 四.实例 一.说明 Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数 ...
- proxyTable中pathWrrite的使用
proxyTable中pathWrrite的使用 proxyTable: { '/iclient': { target: 'http://xxx.xx.com/iclient/xx/xx', chan ...
- web04-LoginServlet
电影网站:www.aikan66.com项目网站:www.aikan66.com游戏网站:www.aikan66.com图片网站:www.aikan66.com书籍网站:www.aikan66.com ...