按要求连边,跑匈牙利

#include<algorithm>
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std; #define N 110 int T,n; int sc[N],go[N];
int a[N][N];
int ly[N],vis[N]; struct edge
{
int to,next;
}e[20010];
int head[N];
int cnt; int getint()
{
int w=0,q=0;
char c=getchar();
while ((c<'0' || c>'9') && c!='-')
c=getchar();
if (c=='-')
q=1,c=getchar();
while (c>='0' && c<='9')
w=w*10+c-'0',c=getchar();
return q?-w:w;
} void link(int x,int y)
{
e[++cnt]=(edge){y,head[x]};
head[x]=cnt;
} bool find(int x)
{
for (int i=head[x];i;i=e[i].next)
{
int t=e[i].to;
if (!vis[t])
{
vis[t]=1;
if (!ly[t] || find(ly[t]))
{
ly[t]=x;
return true;
}
}
}
return false;
} int main()
{
T=getint();
while (T--)
{
n=getint();
for (int i=1;i<=n*2;i++)
head[i]=0,ly[i]=0;
cnt=0;
for (int i=1;i<=n;i++)
sc[i]=getint();
for (int i=1;i<=n;i++)
{
go[i]=getint();
if (sc[i] && !go[i])
link(i,n+i);
}
for (int i=1;i<=n;i++)
{
for (int j=1;j<=n;j++)
a[i][j]=getint();
if (!sc[i] || (sc[i] && !go[i]))
{
for (int j=1;j<=n;j++)
if (a[i][j] && sc[j])
link(i,j+n);
}
}
int f=1;
for (int i=1;i<=n;i++)
if (!sc[i] || (sc[i] && !go[i]))
{
for (int j=1;j<=n*2;j++)
vis[j]=0;
if (!find(i))
{
f=0;
break;
}
}
if (f)
puts("^_^");
else
puts("T_T");
}
return 0;
}

  

【bzoj1433】[ZJOI2009]假期的宿舍的更多相关文章

  1. BZOJ1433 ZJOI2009 假期的宿舍 二分图匹配

    1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2375  Solved: 1005[Submit][Sta ...

  2. bzoj1433: [ZJOI2009]假期的宿舍

    1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2286  Solved: 969[Submit][Stat ...

  3. bzoj1433 [ZJOI2009]假期的宿舍(最大流)

    1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1717  Solved: 754[Submit][Stat ...

  4. bzoj1433 [ZJOI2009]假期的宿舍 最大流

    [ZJOI2009]假期的宿舍 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3429  Solved: 1459[Submit][Status][D ...

  5. bzoj1433[ZJOI2009]假期的宿舍(匈牙利)

    1433: [ZJOI2009]假期的宿舍 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2544  Solved: 1074 [Submit][St ...

  6. bzoj1433: [ZJOI2009]假期的宿舍(最大二分图匹配)

    1433: [ZJOI2009]假期的宿舍 题目:传送门 题解: 这题有点水 跑个二分图匹配就完事了(注意在校生不是一定都互相认识) 代码: #include<cstdio> #inclu ...

  7. BZOJ1433 [ZJOI2009]假期的宿舍 二分图匹配 匈牙利算法

    原文链接http://www.cnblogs.com/zhouzhendong/p/8372785.html 题目传送门 - BZOJ1433 题解 我们理一理题目. 在校的学生,有自己的床,还可以睡 ...

  8. BZOJ1433[ZJOI2009]假期的宿舍——二分图最大匹配

    题目描述 学校放假了······有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题.比如A 和B都是学校的学生,A要回家,而C来看B,C与A不认识.我们假设每个人只能睡和自己直接认 ...

  9. [bzoj1433][ZJOI2009]假期的宿舍——二分图

    题目大意 传送门 题解 显然是二分图匹配. 用一些方法建图就好了. 要注意的是: 本题有多组数据!!! 初始化一定要注意!!! 代码 #include <bits/stdc++.h> us ...

  10. bzoj1433: [ZJOI2009]假期的宿舍 [二分图][二分图最大匹配]

    Description Input Output Sample Input 1 3 1 1 0 0 1 0 0 1 1 1 0 0 1 0 0 Sample Output ˆ ˆ HINT 对于30% ...

随机推荐

  1. 鼠标移动或者鼠标点击div消失不见排查

    点击事件,导致某div或者容器样式隐藏,如果不能直接发现click事件绑定,那么首先排查哪些方法在控制div的样式, 然后看一看哪些方法在调用修改样式的方法. 然后再排查什么在调用修改样式的方法的方法 ...

  2. 九度oj 1480

    题目描述: 一个数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列是上升的.对于给定的一个序列(a1, a2, ...,aN),我们可以得到一些上升的子序列( ...

  3. hdu6060[贪心+dfs] 2017多校3

    /* hdu6060[贪心+dfs] 2017多校3*/ #include <bits/stdc++.h> using namespace std; typedef long long L ...

  4. [BZOJ3545] [ONTAK2010]Peaks(线段树合并 + 离散化)

    传送门 由于困难值小于等于x这个很恶心,可以离线处理,将边权,和询问时的x排序. 每到一个询问的时候,将边权小于等于x的都合并起来再询问. .. 有重复元素的线段树合并的时间复杂度是nlog^2n # ...

  5. WMAP 启动报错 PHP- 提示缺少 msvcr110.dll 的问题

    问题描述:  启动 php-cgi 时如果提示缺少 msvcr110.dll 问题原因:  缺少 vc++ 2012 运行库    问题解决: 需要安装 vcredist_x64.exe 或 vcre ...

  6. 标准C程序设计七---20

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  7. linux top %VSZ含义

    https://blog.csdn.net/sinohenu/article/details/58216013 https://unix.stackexchange.com/questions/449 ...

  8. VM虚拟机

    VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模式. 1 ...

  9. java队列--queue详细分析

    ---恢复内容开始--- Queue:基本上一个队列就是一个先入先出(FIFO)的数据结构 Queue接口与List.Set同一级别,都是继承了Collection接口,LinkedList实现了Li ...

  10. Java中的final关键字(转)

    Java中的final关键字非常重要,它可以应用于类.方法以及变量.这篇文章中我将带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使 ...