题解:

网络流

然后似乎反着做块?

代码:

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
const int N=;
int T,qq[],vvis,q[N*],n,m,t,l,sum,dis[N],x,y,ans,f[N],z,a[N][N];
int bfs()
{
memset(dis,0xff,sizeof dis);
dis[n]=;
int l=,r=;
q[]=n;
while (l<r)
{
int j=q[++l];
for (int i=;i<=n;i++)
if (dis[i]<&&a[i][j]>)
{
dis[i]=dis[j]+;
q[++r]=i;
}
if (j==)return ;
}
return ;
}
int dfs(int x,int y)
{
if (x==n)return y;
int tmp=y,t;
for (int i=;i<=n&&tmp;i++)
if (dis[i]+==dis[x]&&a[x][i])
{
t=dfs(i,min(a[x][i],tmp));
a[x][i]-=t;
a[i][x]+=t;
tmp-=t;
}
return y-tmp;
}
int main()
{
scanf("%d",&T);
while (T--)
{
vvis=;
scanf("%d",&n);
memset(a,,sizeof a);
for (int k=;k<=n;k++)
{
for (int i=;i<;i++)scanf("%d",&qq[i]);
scanf("%d%d",&t,&l);
vvis+=t;
for (int j=;j<;j++)
if (qq[j])for (int i=;i<l;i++)a[+k][i*+j+]=;
a[][k+]=t;
}
for (int i=;i<=;i++)a[i][]=;
n=;
ans=;int t;
while (bfs())ans+=dfs(,1e9);
if (ans==vvis)puts("Yes");
else puts("No");
}
}

poj1698的更多相关文章

  1. 2018.07.06 POJ1698 Alice's Chance(最大流)

    Alice's Chance Time Limit: 1000MS Memory Limit: 10000K Description Alice, a charming girl, have been ...

  2. [poj1698]Alice's Chance[网络流]

    [转]原文:http://blog.csdn.net/wangjian8006/article/details/7926040 题目大意:爱丽丝要拍电影,有n部电影,规定爱丽丝每部电影在每个礼拜只有固 ...

  3. POJ1698 最大流或者匈牙利

    题意:       一个人他有n个任务,每个任务都有一些限制:  (1)只能在一个星期中指定的日子去做,比如周1 2 6啥的  (2)总工作量有几天,就是一共要工作几天  (3)必须在几周之内完成,就 ...

  4. poj1698--最大流(Dinic)

    题目大意: 爱丽丝要拍电影,有n部电影,规定爱丽丝每天只能拍一部电影,每部电影在每个礼拜只有固定的几天可以拍电影,只可以拍前面w个礼拜,并且这部电影要拍d天,问爱丽丝能不能拍完所有的电影. 思路: 建 ...

  5. OJ题目分类

    POJ题目分类 | POJ题目分类 | HDU题目分类 | ZOJ题目分类 | SOJ题目分类 | HOJ题目分类 | FOJ题目分类 | 模拟题: POJ1006 POJ1008 POJ1013 P ...

  6. Alice's Chance

    poj1698:http://poj.org/problem?id=1698 题意:爱丽丝要拍电影,有n部电影,规定爱丽丝每部电影在每个礼拜只有固定的几天可以拍电影,只可以拍前面w个礼拜,并且这部电影 ...

  7. POJ 1698 (二分图的多重匹配)

    转载:http://www.cppblog.com/MatoNo1/archive/2011/03/26/142766.aspx 我们知道在一个图中,每个点最多只能匹配一条边的情况,是二分图的最大匹配 ...

  8. poj图论解题报告索引

    最短路径: poj1125 - Stockbroker Grapevine(多源最短路径,floyd) poj1502 - MPI Maelstrom(单源最短路径,dijkstra,bellman- ...

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

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

随机推荐

  1. oracle lpad 函数使用介绍

    函数介绍 lpad函数从左边对字符串使用指定的字符进行填充.从其字面意思也可以理解,l是left的简写,pad是填充的意思,所以lpad就是从左边填充的意思. 语法格式如下: lpad( string ...

  2. 多媒体文件格式分析 MP3文件结构及编解码流程

    多媒体文件格式分析 http://blog.csdn.net/taniya001/article/details/7962864 多媒体文件格式分析 MP3文件结构及编解码流程 http://www. ...

  3. python将一些朋友的姓名存储在一个列表中,访问该列表中的每个元素,从而将每个朋友的姓名都打印出来

    """ 3-1 姓名: 将一些朋友的姓名存储在一个列表中,并将其命名为 names . 依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来. "&quo ...

  4. 浅谈boost.variant的几种访问方式

    前言 variant类型在C++14并没有加入,在cppreference网站上可以看到该类型将会在C++17加入,若想在不支持C++17的编译器上使用variant类型,我们可以通过boost的va ...

  5. Swoole学习(七)Swoole之异步TCP服务器的创建

    环境:Centos6.4,PHP环境:PHP7 <?php //创建TCP服务器 /** * $host 是swoole需要监听的ip,如果要监听本地,不对外服务,那么就是127.0.0.1;如 ...

  6. Visual Studio 2015 初体验

    据微软介绍每次发布的新版本,都承载着为开发者提供最高效的Visual Studio开发体验的使命.Visual Studio 2015亦延续了这一趋势,为开发者带来了进一步的生产力创新,包括调试和诊断 ...

  7. 0ctf2017-pages-choices

    Pages 题目来自于CCS 2016 <Prefetch Side-Channel Attacks: Bypassing SMAP and Kernel ASLR>,利用intel pr ...

  8. zsh + oh-my-zsh 默认shell

    项目地址 zsh -----> http://www.zsh.orgoh-my-zsh ----> http://ohmyz.sh The last shell you’ll ever n ...

  9. Java进阶之自动拆箱与自动装箱

    序. java基本类型介绍 java中,基本数据类型一共有8种,详细信息如下表: 类型 大小 范围 默认值 byte 8 -128 - 127 0 short 16 -32768 - 32768 0 ...

  10. php+mysql中文无法检索出数据

    将数据库字符集设置为latin,并将字符转码成gb2312 将字符长度打印出来发现:因为latin中一个字符占用2个字节,utf-8中一个字符占用3个字节,这样一来检索的时候就会出现错误 实验过程: ...