有n个任务,给出任务时间和起点终点,每两个点之间的时间花费为其曼哈顿距离,问若要每个任务都按时开始需要多少出租车。
并不是很难,就是题意理解起来可能会有些问题,反正我当时是WA了几遍之后才发现的,a到b能连边,需满足a的开始时间+到终点花费+从a的终点到b的起点的花费<=b的开始时间
将图建好之后就简单了,直接跑一遍匈牙利求最小路径覆盖=总点数-最大匹配即可。
还get到了一个scanf的新用法:scanf("%d:%d",&a,&b)
可以直接跳过去中间的’:’直接读入b,当时用的getchar还RE了几遍,用这个就AC了QAQ
附上题目链接:poj2060
|
|