http://poj.org/problem?id=1698

电影和日子匹配,电影可以匹配多个日子。

最多有maxw*7个日子。

二分图多重匹配完,检查一下是否每个电影都匹配了要求的日子那么多。

#include<cstdio>
#include<cstring>
#include<algorithm>
#define N 360
#define M 30
using namespace std;
int t,n,m;
int g[N][M];
int linker[M][N],num[M];
bool vis[M];
bool dfs(int u){
for(int v=0;v<m;v++)
if(g[u][v]&& !vis[v]){
vis[v]=1;
if(linker[v][]<num[v]){
linker[v][++linker[v][]]=u;
return 1;
}
for(int i=1;i<=num[v];i++)
if(dfs(linker[v][i])){
linker[v][i]=u;
return 1;
}
}
return 0;
}
int hungary(){
int res=0;
for(int i=0;i<m;i++)
linker[i][]=0;
for(int u=0;u<n;u++){
memset(vis,0,sizeof vis);
if(dfs(u))res++;
}
return res;
} bool solve(){
hungary();
for(int i=0;i<m;i++){
// printf("{%d}",linker[i][]);
if(linker[i][]!=num[i])
return 0;
}
return 1;
}
int main(){
scanf("%d",&t);
while(t--){
scanf("%d",&m);
memset(g,0,sizeof g);
int maxw=0;
for(int i=0;i<m;i++)
{
for(int j=0;j<7;j++)
scanf("%d",&g[j][i]);
int w;
scanf("%d%d",&num[i],&w);
maxw=max(maxw,w);
for(int j=0;j<7;j++)if(g[j][i])
for(int k=1;k<w;k++)
g[j+k*7][i]=1;
}
n=maxw*7;
if(solve())puts("Yes");
else puts("No");
}
return 0;
}

  

【POJ 1698】Alice's Chance(二分图多重匹配)的更多相关文章

  1. poj 1698 Alice‘s Chance

    poj 1698  Alice's Chance 题目地址: http://poj.org/problem?id=1698 题意: 演员Alice ,面对n场电影,每场电影拍摄持续w周,每周特定几天拍 ...

  2. POJ 1698 Alice's Chance

    题目:Alice 要拍电影,每一天只能参与一部电影的拍摄,每一部电影只能在 Wi 周之内的指定的日子拍摄,总共需要花 Di 天时间,求能否拍完所有电影. 典型的二分图多重匹配,这里用了最大流的 din ...

  3. 图论--网络流--最大流--POJ 1698 Alice's Chance

    Description Alice, a charming girl, have been dreaming of being a movie star for long. Her chances w ...

  4. poj 1698 Alice's Chance 最大流

    题目:给出n部电影的可以在周几拍摄.总天数.期限,问能不能把n部电影接下来. 分析: 对于每部电影连上源点,流量为总天数. 对于每一天建立一个点,连上汇点,流量为为1. 对于每部电影,如果可以在该天拍 ...

  5. POJ 1698 Alice&#39;s Chance(最大流+拆点)

    POJ 1698 Alice's Chance 题目链接 题意:拍n部电影.每部电影要在前w星期完毕,而且一周仅仅有一些天是能够拍的,每部电影有个须要的总时间,问能否拍完电影 思路:源点向每部电影连边 ...

  6. poj 2289 Jamie's Contact Groups【二分+最大流】【二分图多重匹配问题】

    题目链接:http://poj.org/problem?id=2289 Jamie's Contact Groups Time Limit: 7000MS   Memory Limit: 65536K ...

  7. Poj 2289 Jamie's Contact Groups (二分+二分图多重匹配)

    题目链接: Poj 2289 Jamie's Contact Groups 题目描述: 给出n个人的名单和每个人可以被分到的组,问将n个人分到m个组内,并且人数最多的组人数要尽量少,问人数最多的组有多 ...

  8. <转> 二分图多重匹配问题

    在二分图最大匹配中,每个点(不管是X方点还是Y方点)最多只能和一条匹配边相关联,然而,我们经常遇到这种问题,即二分图匹配中一个点可以和多条匹配边相关联,但有上限,或者说,Li表示点i最多可以和多少条匹 ...

  9. POJ2584 T-Shirt Gumbo【二分图多重匹配】

    题目链接: id=2584">http://poj.org/problem?id=2584 题目大意: 如今有5种型号(S.M.L.X.T)的衣服要发放给N个參赛队员.给出每一个參赛者 ...

随机推荐

  1. 实现gridview空白处的点击事件

    今天做了一个girdview,要求长按item出现删除按钮,点击空白处取消,长按出现按钮可以,但是点击空白处有问题,如果点击到书籍的空白处 可以用适配器的布局点击事件处理,但是空白区域不是item,不 ...

  2. ef操作类

    基于Hi博客的类库 20160811 using Model; using System; using System.Collections.Generic; using System.Data.En ...

  3. 多项式FFT相关模板

    自己码了一个模板...有点辛苦...常数十分大,小心使用 #include <iostream> #include <stdio.h> #include <math.h& ...

  4. HTML5+jquery整屏页面切换效果

    压缩包下载 演示地址 http://www.yyyweb.com/demo/page-transitions/

  5. Regression analysis

    Source: http://wenku.baidu.com/link?url=9KrZhWmkIDHrqNHiXCGfkJVQWGFKOzaeiB7SslSdW_JnXCkVHsHsXJyvGbDv ...

  6. P3369 【模板】普通平衡树(Treap/SBT)

    题目描述 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 插入x数 删除x数(若有多个相同的数,因只删除一个) 查询x数的排名(若有多个相同的数,因输出最小的排名) 查询 ...

  7. 033医疗项目-模块三:药品供应商目录模块——供货商药品目录t添加查询功能----------Dao层和Service层和Action层和调试

    什么叫做供货商药品目录t添加查询功能?就是说我们前面的博客里面不是说供货商登录后看到了自己供应的药品了么如下: 现在供货商想要往里面添加别的药品,那么这个药品的来源就是卫生局提供的那个Ypxx表(药品 ...

  8. C#加密解密大全

    1.方法一 (不可逆加密)     public string EncryptPassword(string PasswordString,string PasswordFormat )      { ...

  9. mac上远程连接windows

    Microsoft 适用于 Mac 的远程桌面连接客户端 2.1.1 http://www.microsoft.com/zh-cn/download/confirmation.aspx?id=1814 ...

  10. 自己存档:asp.net mvc 从filterContent得到controller和action

    //filterContext.RouteData.GetRequiredString("controller") + "/" + filterContext. ...