Poj-2060 Taxi Cab Scheme 二分图最小路径覆盖
来源:互联网 发布:玩cf网络异常怎么修复 编辑:程序博客网 时间:2024/05/17 16:15
题目链接
出租车公司有n个预约, 每个预约有时间和地点, 地点分布在二维整数坐标系上, 地点之间的行驶时间为两点间的曼哈顿距离(|x1 - x2| + |y1 - y2|)。一辆车可以在运完一个乘客后运另一个乘客, 条件是此车要在预约开始前一分钟之前到达出发地, 问最少需要几辆车搞定所有预约。
#include <stdio.h>#include <string.h>#include <math.h>#include <iostream>#include <algorithm>using namespace std;typedef long long LL;const int maxn = 505;const int Mod = 1000000007;const double inf = 1<<30;int n;int map[maxn][maxn];struct node{int sta,t;int sx,sy,ex,ey;}book[maxn];int cx[maxn],cy[maxn];bool vis[maxn];bool FindPath( int u ){for( int i = u+1; i <= n; i ++ ){if( !vis[i] && map[u][i] ){vis[i] = true;if( cy[i] == -1 || FindPath( cy[i] ) ){cy[i] = u;cx[u] = i;return true;}}}return false;}int MaxMatch(){int ans = 0;memset( cx,-1,sizeof(cx) );memset( cy,-1,sizeof(cy) );for( int i = 1; i <= n; i++ ){if( cx[i] == -1 ){memset( vis,0,sizeof(vis) );ans += FindPath( i );}}return ans;}int main(){#ifndef ONLINE_JUDGE freopen("data.txt","r",stdin); #endifint cas,h,m;scanf("%d",&cas);while( cas -- ){scanf("%d",&n);memset( map,0,sizeof(map) );for( int i = 1; i <= n; i ++ ){scanf("%d:%d%d%d%d%d",&h,&m,&book[i].sx,&book[i].sy,&book[i].ex,&book[i].ey);book[i].sta = h*60 + m;book[i].t = abs( book[i].sx - book[i].ex ) + abs( book[i].sy - book[i].ey );}for( int i = 1; i <= n; i ++ ){for( int j = i+1; j <= n; j ++ ){int dis = abs( book[j].sx - book[i].ex ) + abs( book[j].sy - book[i].ey );if( book[i].t + dis + 1 <= book[j].sta - book[i].sta )map[i][j] = 1;}}printf("%d\n",n - MaxMatch());}return 0;}
0 0
- Poj-2060 Taxi Cab Scheme 二分图最小路径覆盖
- POJ - 2060 Taxi Cab Scheme 二分图 最小路径覆盖
- 【二分图+最小路径覆盖+注释】北大 poj 2060 Taxi Cab Scheme
- HDU 1350 & HDU 1960 & POJ 2060 Taxi Cab Scheme【二分图之最小路径覆盖,经典】
- POJ2060 Taxi Cab Scheme【二分图最小路径覆盖】
- POJ--2060[Taxi Cab Scheme] 最小路径覆盖
- POJ 2060 Taxi Cab Scheme (最小路径覆盖)
- POJ-2060 Taxi Cab Scheme 最小路径覆盖(匈牙利)
- POJ 2060 Taxi Cab Scheme(匈牙利—最小路径覆盖)
- POJ 2060 Taxi Cab Scheme DAG最小路径覆盖
- poj 2060 Taxi Cab Scheme 最小路径覆盖
- poj 2060 Taxi Cab Scheme 最小路径覆盖
- POJ-2060-Taxi Cab Scheme-最小路径覆盖
- POJ 2060 Taxi Cab Scheme(最小路径覆盖)
- PKU2060 Taxi Cab Scheme - 最小路径覆盖
- POJ2060 Taxi Cab Scheme [最小路径覆盖]
- hdu1350 Taxi Cab Scheme (最小路径覆盖)
- poj2060 Taxi Cab Scheme 最小路径覆盖
- VC6.0处理Excel2003的实例程序
- 博客中添加文章的编程
- jQuery 遍历表格列
- 利用iptables来配置linux禁止所有端口登陆和开放指定端口
- Eclipse编辑java文件报Unhandled event loop exception错误的解决办法 .
- Poj-2060 Taxi Cab Scheme 二分图最小路径覆盖
- 相辉:严谨与灵性——浅谈移动互联网设计趋势
- 直接播云点播免费使用方法
- Oracle的文件号、相对文件号及其他
- Javascript面向对象编程(二):构造函数的继承
- Android绘图实例(Bitmmap,Canvas,Pain的使用)&动态的在图片上添加文字(canvas.drawText)
- 利用Apache BeanUtils实现冗余字段同步和管理
- 程序员父亲的遗产——编程十诫
- AutoCAD.NET复制选定对象到指定图层