#P17034. [NWERC 2020] Island Tour

[NWERC 2020] Island Tour

背景

译自 Northwestern Europe Regional Contest (NWERC) 2020

题目描述

Tijmen、Annemarie 和 Imme 正在游览冰岛。冰岛是位于大西洋中部的美丽岛国。为了尽可能多地游览这座岛,他们想参观环岛公路上的所有旅游景点;环岛公路是沿着这座岛的环形边界绕行的主干道路。共有 nn 个景点,按照它们沿道路出现的顺序,方便地编号为 11nn

不幸的是,当前的保持距离措施规定,任意给定景点同一时刻最多只能有一名游客,因此他们决定分头行动。每个人会从不同的景点出发,并沿着环岛公路的循环顺序参观剩余景点。也就是说,从景点 ii 开始游览的人,会按照 i,i+1,,n,1,,i1i,i+1,\ldots,n,1,\ldots,i-1 的顺序参观景点。

他们知道从一个景点前往下一个景点需要多长时间,也知道每个人将在每个景点停留多长时间。他们会在同一时刻开始游览,并且——由于他们缺乏耐心——会严格按照计划行程行动,中途不等待。请帮助 Tijmen、Annemarie 和 Imme 决定每个人应从哪里开始游览,使得任何时刻都不会有超过一人位于同一个景点。一个人可以在另一个人离开某个景点的同一时刻进入该景点;当一个人游览完自己的最后一个景点后,他会立刻离开该景点并返回酒店。

输入格式

输入包括:

  • 第一行包含一个整数 nn1n4001 \le n \le 400),表示旅游景点数量。
  • 第二行包含 nn 个整数 d1,,dnd_1,\ldots,d_n(对每个 ii,有 1di1061 \le d_i \le 10^6),其中 did_i 表示从景点 ii 到景点 i+1i+1 的旅行时间(单位为分钟);当 i=ni=n 时,表示从景点 nn 到景点 11 的旅行时间。
  • 对 Tijmen、Annemarie 和 Imme 三个人中的每一个人:
    • 一行包含 nn 个整数 t1,,tnt_1,\ldots,t_n(对每个 ii,有 1ti1061 \le t_i \le 10^6),其中 tit_i 表示该人在景点 ii 停留的时间(单位为分钟)。

输出格式

如果存在合法分配方案,输出一行三个整数,分别表示三个人的起始景点。否则,输出 impossible。如果存在多个合法解,你可以输出任意一个。

6
1 1 1 1 1 1
2 1 3 2 3 1
8 7 4 9 7 2
7 6 2 9 2 1
1 5 6 
4
1 1 1 1
1 1 1 1
10 3 2 1
4 2 5 1
impossible

提示

【数据规模与约定】

  • 1n4001 \le n \le 400
  • 1di1061 \le d_i \le 10^6
  • 对三个人中每个人、每个景点 ii,停留时间 tit_i 满足 1ti1061 \le t_i \le 10^6
  • 若有多个合法方案,可以输出任意一个。