(我打算在1542年发布此消息:调度冲突 仍然是当前的xkcd,但是我遇到了调度冲突。)
输入项
输入将是3n代表n事件的元素列表。每3个组中的第一个元素将是事件的名称;第二和第三,分别是开始时间和结束时间。例如:
foo 12 34 bar 56 78
表示一个事件foo始于“时间12”(时间仅用整数表示;您可以将它们视为午夜之后的分钟),结束于34,第二个事件bar始于56,结束于78。
事件的名称将始终仅由字母数字字符组成,并且时间将始终为≥0且<1440的整数。结束时间将始终比开始时间至少大1。不保证它们会以任何方式进行排序。
如果愿意,可以将其作为单个以空格分隔的字符串;否则,应将其视为数组,列表,向量或您的语言的等效形式。
输出量
输出应为事件名称的空格分隔列表。输出事件名称的规则如下:
您输出的所有事件都不会相互冲突。例如,对于input
a 0 10 b 5 15,您可能不会同时输出两者a,b因为时间冲突(即部分重叠)。如果一个事件恰好在另一个事件开始时结束,则可以同时包含这两个事件。您可能不会输出称为
NSCC“国家日程安排冲突竞赛” 的事件,该事件中始终始终只有一个是输入。您还必须输出至少一个与之发生冲突(部分重叠)的事件NSCC(并且永远也至少会有其中之一)。在遵循以上两个规则的同时,您必须输出尽可能多的事件。(这样做是为了使您看起来尽可能的忙碌,从而使NSCC丢失似乎更可信。)
也可以将其输出为单个以空格分隔的字符串或数组,列表,向量等。
可能有多个输出。
测试用例
请注意,列出的输出仅是示例。您的代码可能会输出不同的内容,只要它仍然遵循上述三个规则即可(值得注意的是,这意味着事件的数量必须与示例中的相同)。
进:UnderwaterBasketWeavingConvention 50 800 NSCC 500 550
出:UnderwaterBasketWeavingConvention
进:SconeEating 0 50 RegexSubbing 45 110 CodeGolfing 95 105 NSCC 100 200
出:SconeEating CodeGolfing
进:VelociraptorHunting 0 300 NerdSniping 200 500 SEChatting 400 700 DoorknobTurning 650 750 NSCC 725 775
出:NerdSniping DoorknobTurning
进:NSCC 110 115 A 100 120 B 120 140 C 105 135 D 100 105 E 135 500
出:C D E
进:A 800 900 NSCC 700 1000 B 650 750 C 950 1050 D 655 660 E 660 665 F 1030 1040 G 1040 1060
出:A D E F G
进:A 10 11 B 11 12 C 12 13 D 13 14 NSCC 15 1090 E 10 16
出:E
如果我错过了一些边缘案例,请随时在编辑中添加更多测试案例。
规则
您的代码必须在合理的个人计算机上在30秒内完成所有提供的测试用例(这更多是一个健全性检查,因为它可能对结合在一起的所有测试用例都可以更快地完成)。
这是code-golf,因此以字节为单位的最短代码获胜。

underwaterBasketWeavingConvention 50 800 nscc 550而不是您的示例?