题目名称 3577. [POJ 3683]牧师约翰最忙碌的一天
输入输出 john_busy.in/out
难度等级 ★★★
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 5
题目来源 Gravatarsyzhaoss 于2021-04-04加入
开放分组 全部用户
提交状态
分类标签
图论 2-SAT
分享题解
通过:1, 提交:7, 通过率:14.29%
Gravatar┭┮﹏┭┮ 100 0.018 s 7.50 MiB C++
Gravatar┭┮﹏┭┮ 80 0.230 s 5.57 MiB C++
Gravatar┭┮﹏┭┮ 80 0.233 s 5.37 MiB C++
Gravatar┭┮﹏┭┮ 80 0.239 s 2.92 MiB C++
Gravatar┭┮﹏┭┮ 80 0.241 s 2.78 MiB C++
Gravatar┭┮﹏┭┮ 80 0.249 s 2.78 MiB C++
Gravatar┭┮﹏┭┮ 0 1.041 s 8.05 MiB C++
关于 牧师约翰最忙碌的一天 的近10条评论(全部评论)
ok
Gravatar┭┮﹏┭┮
2023-11-04 17:04 1楼

3577. [POJ 3683]牧师约翰最忙碌的一天

★★★   输入文件:john_busy.in   输出文件:john_busy.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

牧师约翰在 9 月 1 日这天非常的忙碌。

有 N 对情侣在这天准备结婚,每对情侣都预先计划好了婚礼举办的时间,其中第 i 对情侣的婚礼从时刻 Si 开始,到时刻 Ti 结束。

婚礼有一个必须的仪式:站在牧师面前聆听上帝的祝福。

这个仪式要么在婚礼开始时举行,要么在结束时举行。

第 i 对情侣需要 Di 分钟完成这个仪式,即必须选择 Si∼Si+Di 或 Ti−Di∼Ti 两个时间段之一。

牧师想知道他能否满足每场婚礼的要求,即给每对情侣安排Si∼Si+Di 或 Ti−Di∼Ti,使得这些仪式的时间段不重叠。

若能满足,还需要帮牧师求出任意一种具体方案。

注意,约翰不能同时主持两场婚礼,且 所有婚礼的仪式均发生在 9 月 1 日当天。

如果一场仪式的结束时间与另一场仪式的开始时间相同,则不算重叠。

例如:一场仪式安排在 08:00∼09:00,另一场仪式安排在 09:00∼10:00,则不认为两场仪式出现重叠。

【输入格式】

第一行包含整数 N。

接下来 N 行,每行包含 Si,Ti,Di,其中 Si 和 Ti 是 hh:mm 形式。

【输出格式】

第一行输出能否满足,能则输出 YES,否则输出 NO。

接下来 N 行,每行给出一个具体时间段安排。

【样例输入】

2
08:00 09:00 30
08:15 09:00 20

【样例输出】

YES
08:00 08:30
08:40 09:00

【数据规模与约定】

$1\leq N\leq 1000$