/*
最小路径覆盖,建图很重要,对于两个destionatin schedule i和j,
如果i的出发时间小于j且完成i的时间加上从i的目的地到j的起始地
的时间小于j的出发时间,那么i到j有一条边
*/
#include <iostream>
#include <cmath>
#define MAX_N 505
struct p
{
int nein;
int neins[MAX_N];
}nodes[MAX_N];
struct dst
{
int x1, y1, x2, y2, t;
}dsts[MAX_N];
int dn;
bool v[MAX_N];
int pre[MAX_N];
using namespace std;
bool can(int id)
{
for(int i = 0; i < nodes[id].nein; i++)
{
int curid = nodes[id].neins[i];
if(!v[curid])
{
v[curid] = true;
if(pre[curid] == 0 || can(pre[curid]))
{
pre[curid] = id;
return true;
}
}
}
return false;
}
//匈牙利算法
int getRes()
{
int total = 0;
for(int i = 1; i <= dn; i++)
{
memset(v, 0, sizeof(v));
if(can(i))
total++;
}
return dn - total;
}
int main()
{
int caseN, i, j;
char temp[8];
scanf("%d", &caseN);
while(caseN--)
{
memset(nodes, 0, sizeof(nodes));
memset(pre, 0, sizeof(pre));
scanf("%d", &dn);
//建图
for(i = 1; i <= dn; i++)
{
scanf("%s%d%d%d%d", temp, &dsts[i].x1, &dsts[i].y1, &dsts[i].x2, &dsts[i].y2);
dsts[i].t = (int(temp[0] - '0') * 10 + int(temp[1] - '0')) * 60 + int(temp[3] - '0') * 10 + int(temp[4] - '0');
for(j = 1; j < i; j++)
{
if(dsts[i].t <= dsts[j].t)
{
int tempd = dsts[i].t + abs(dsts[i].x1 - dsts[i].x2) + abs(dsts[i].y1 - dsts[i].y2) +
abs(dsts[i].x2 - dsts[j].x1) + abs(dsts[i].y2 - dsts[j].y1);
if(tempd >= 24 * 60) continue;
if(tempd < dsts[j].t) nodes[i].neins[nodes[i].nein++] = j;
}
else
{
int tempd = dsts[j].t + abs(dsts[j].x1 - dsts[j].x2) + abs(dsts[j].y1 - dsts[j].y2) +
abs(dsts[j].x2 - dsts[i].x1) + abs(dsts[j].y2 - dsts[i].y1);
if(tempd >= 24 * 60) continue;
if(tempd < dsts[i].t) nodes[j].neins[nodes[j].nein++] = i;
}
}
}
printf("%d/n", getRes());
}
return 0;
}
相关推荐
Buck电路中自举电容串联小电阻的作用
在Buck电路中,自举电容(Cboot)驱动高边MOSFET时,因寄生电感和电容会形成LC谐振回路,导致SW节点高频振铃,引发EMI问题。串联小电阻(Rboot)可引入阻尼效应,抑制振铃、改善波形和EMI性能,但会略微增加开关损耗。设计时建议预留可调电阻位(2Ω~20Ω),根据实测结果平衡效率与系统稳定性,提升电源可靠性。这一措施是优化开关电源EMC的常见实践。
POJ-2060-Taxi Cab Scheme
POJ-2060-Taxi Cab Scheme http://poj.org/problem?id=2060 给出一些预约的起始时间,出发地和目的地,问至少需要多少车可以满足所有的预约 对于任何一对预约,如果前一预约的结束时刻加上到达下一个预约的所需时间小于下一个预约的起始时间,就在两个预约之间连一条边,题目就转化为求该图的最小路劲覆盖 最小路劲覆盖 转自 http://baike.b
用运放和乘法器DIY忆阻模拟器:从理论到Multisim仿真实战
本文详细介绍了如何利用运放和乘法器DIY忆阻模拟器,从理论基础到Multisim仿真实战。通过解析忆阻器的数学模型,设计关键电路模块,并完成仿真验证,帮助电子爱好者低成本实现忆阻器功能。文章还提供了实际调试中的常见问题解决方案和进阶应用建议,适合神经形态计算和非易失性存储领域的研究者参考。
POJ - 2060 Taxi Cab Scheme
Running a taxi station is not all that simple. Apart from the obvious demand for a centralised coordination of the cabs in order to pick up the customers calling to get a cab as soon as possible,there...
win11下的MySQL安装
目前官方最新版本是8.0.26,考虑到其稳定性、可靠性还需一定周期保证,所以使用官方版求稳定仍然建议5.7系列。3、选择MySQL Servers 5.7.38 -x64,然后按绿色箭头将选中的版本移植到右边选中框中。4、点击下方蓝色Advanced Options,选择安装位置。1、在开始界面搜索MySQL,点击command line。4、在“系统变量”中选择“path”,点击编辑。5、新建——>增加MySQL路径——>确定,12、execute,安装好后next。9、不需要做修改,直接点击next。.
从ST转国产ARM必看:GD32/APM32等5款芯片的SWD下载全攻略(含CH32特殊处理)
本文为从STM32转向国产ARM芯片的开发者提供了详细的SWD下载调试指南。针对GD32F103C8T6、APM32F103C8T6等五款热门国产芯片,详细说明了如何利用已有的ST-Link工具和Keil MDK环境进行程序烧录,并特别介绍了CH32F103芯片所需的独立器件库安装等特殊处理方法,帮助开发者实现平滑迁移,提升开发效率。
POJ 2060-Taxi Cab Scheme
Description Running a taxi station is not all that simple. Apart from the obvious demand for a centralised coordination of the cabs in order to pick up the customers calling to get a cab as soon as p
基于分位数回归的静态CoVaR计算 案例与代码
原文链接:https://bbs.pinggu.org/thread-7925441-1-1.html 一、静态CoVaR模型介绍 二、资料简介 实现对相关期刊论文进行论文重现,解决实证分析中的技术操作问题。里面包含了每一步详细的步骤,可以方便的利用这个手册解决大部分利用分位数回归计算静态CoVaR的论文的模型实现问题。即从数据下载到模型实现一整条操作步骤。 关键词:【分位数回归】【Co...
POJ_2060_Taxi Cab Scheme【最小路径覆盖】
/* Taxi Cab Scheme Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 6460 Accepted: 2720 Description Running a taxi station is not all that simple. Apart from the obvious
[RK3568 Android11] 开发之调试RK809 codec音频-SPK喇叭
目录 前言 一、注册声卡顺序 二、SPK喇叭路由配置 三、tinyalsa调试工具 前言 瑞芯微RK809是一种复杂的功率管理集成电路(PMIC)集成编解码器,适用于由外部电源供电的多核系统应用;同时它也集成了音频编解码器,这样在硬件设计上可以直接使用RK809 codec功能,不必再外挂个其他codec芯片;RK809 codec不仅支持SPK,还支持耳机,MIC功能; 一、注册声卡顺序 设备树dts里面原厂帮我们配置好了rk809_sound,我们直接...
2025年9月GESP(C++四级):排兵布阵
作为将军,你自然需要合理地排兵布阵。地图可以视为n行m列的网格,适合排兵的网格以 1 标注,不适合排兵的网格以 0 标注。现在你需要在地图上选择一个矩形区域排兵,这个矩形区域内不能包含不适合排兵的网格。请问可选择的矩形区域最多能包含多少网格?
Taxi Cab Scheme(POJ-2060)
Problem Description Running a taxi station is not all that simple. Apart from the obvious demand for a centralised coordination of the cabs in order to pick up the customers calling to get a cab as ...
从毫K级温控到分子级洁净:光刻机环境控制系统的技术演进与专利格局
摘要 光刻机环境控制系统是半导体制造中的"隐形精密工程",通过毫K级温度控制(±0.002℃)、超高洁净度(ISO Class 1)等核心技术为纳米级光刻提供环境保障。本文系统分析了温度、湿度、洁净度、流场和压力控制五大技术方向的发展趋势,揭示了从单参数控制向多参数协同智能控制的转型路径。研究显示:1)温度控制正从PID向神经网络智能控制演进;2)EUV光刻将湿度控制推至ppbv级;3)洁净度控制扩展到分子级污染物管理。头部厂商中,ASML侧重系统集成,Nikon专注浸没流场,Canon
poj 2060 Taxi Cab Scheme (最小路径覆盖)
http://poj.org/problem?id=2060 Taxi Cab Scheme Time Limit:1000MS Memory Limit:30000K Total Submissions:5459 Accepted:2286 Description Running a taxi station...
visio安装包
Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。
Probability and Statistics - 4th edition
Probability and Statistics - 4th edition
poj2060Taxi Cab Scheme(最小路径覆盖)
题目链接: http://poj.org/problem?id=2060 思路: 要求最少派几辆车。那么我们就可以先把那些可以接上的车辆订单都建边,建成一个有向无环图,然后我们可以利用二分图最大匹配计算出最大匹配p,然后就可以算出需要的车辆为n-p。 代码: #include #include #include #include using namespace std; const
ET2012新版免狗免安装绿色软件
ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,
poj 2060 Taxi Cab Scheme 最小路径覆盖
//二分匹配的最小路径覆盖 //对于第i次ride,如果在第i次ride结束后还能在第j次ride出发前赶到第j次的出发点 //那么i到j就有一条边 //根据最小路径覆盖 = N - 最大匹配即可得到答案 #include #include #include #include using namespace std; const int maxn = 510; int lin
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
POJ2060 Taxi Cab Scheme
注意一辆太可惜是从一个起点到达终点再从这个终点抵达下一个位置的起点,最小路径覆盖 #include #include using namespace std; const int size = 600; struct node { int
poj2060 - Taxi Cab Scheme
想看更多的解题报告: http://blog.youkuaiyun.com/wangjian8006/article/details/7870410 转载请注明出处:http://blog.youkuaiyun.com/wangjian8006 题目大意:有m个任务,每个任务有开始的时间(xx:xx),起点(a,b)与终点(c,d) 然后做完这
poj2060 Taxi Cab Scheme 最小路径覆盖
题意: 有n个顾客做出租车,给出每个人的出发时间,出发地与目的地的坐标,问最少要多少辆出租车能满足需要。 两地的距离为两地的曼哈顿距离,出租车一分钟可以行驶距离1。 读入数据按照出发时间升序给出。 思路: 对于两个顾客i和他前面的某个顾客j,如果i到达目的地的时间,加上从i的目的地到j的出发地的时间小于j的出发时间,i和j就能用一辆车满足。 所以,对于每个顾客i,枚举他前面的每
poj2060 Taxi Cab Scheme
这道题依然是一道裸的最短路径覆盖,注意建图。 建图:以每个任务为节点,若是从任务i能在规定的时间内到达任务j,则从i连一条边到j。 const MAXN=500; var tc,n:longint; a,as,ae:array[1..MAXN,1..2]of longint; g:array[1..MAXN,1..MAXN]of longint; match,t:array[1..MA
【POJ2060】Taxi Cab Scheme
二分图 前向星
UVA1201/POJ2060 Taxi Cab Scheme
题意 给定m个客人的出发时间和起点,终点,问最少用几个出租车可以完成任务,出租车需要在出发前一分钟到达起点。坐标(x,y),时间花费|x1-x2|+|y1-y2|。 0 < M < 500,出发时间00:00 to 23:59 题解 如果在送完一个客人之后还能够去送另一个客人,肯定是最好的。所以把一个客人拆成两个点:在起点和在终点,如果在终点的点能够再去送在起点的点...
POJ 2060 Taxi Cab Scheme(最小路径覆盖)
题目链接: POJ 2060 Taxi Cab Scheme 分析: 最小路径覆盖=顶点数-最大匹配数。#include <cstdio> #include <cstring> #include <algorithm> #include <cmath> using namespace std; const int MAX_N=510;int T,n,total; int st[MAX_N],e
【二分匹配】 poj2060 Taxi Cab Scheme
Taxi Cab Scheme http://poj.org/problem?id=2060 Description Running a taxi station is not all that simple. Apart from the obvious demand for a centralised coordination of the cabs in order t
[POJ2060 Taxi Cab Scheme]
[题目来源]:POJ2060 [关键字]:二分图最小路径覆盖 [题目大意]:给出一系列出租车客人的时间表,问最少需多少人才能满足每一位顾客。 //===================================================================================================== [分析]:如果以每个顾客时间看成一个点,一...
627



被折叠的 条评论
为什么被折叠?



