翻译
查看原帖
翻译
638148
liujiaxi123456楼主2023/10/3 18:57

题目大意

有 nn 个坦克,从1到n编号,它们要进行消息传输。

每一次传输如下,列表中第一个坦克将信息传输到列表中的某个坦克。接收到该消息的坦克将其进一步发送到列表后的某个坦克。该过程将继续进行,直到最后一个坦克收到消息。可能不是列表中的所有坦克都会收到消息,但列表中的最后一个储罐必须收到消息。 当最后一个坦克收到消息时,它将挪到第一个位置,并发送一条消息。当信息到达最后一个坦克时,该储罐移动到列的开头,并将下一条信息发送到列表的末尾,依此类推。因此,当列中的坦克返回到其原始顺序时,练习就完成了。 在两个坦克之间传输信息需要一秒钟,然而,并非总是一个坦克可以将信息传输给另一个坦克。让我们考虑列中的两个坦克,使它们中的第一个是从开始计数的列中的第i个,第二个是列中的j个,并假设第二个坦克的编号为x。然后,如果i<ji<j and i>=j−axi>=j-a_{x} 则可以传输。 你会得到坦克的数量,以及所有坦克的信息接收半径。您必须帮助Smart Beaver并组织消息传输,使所有消息的总传输时间尽可能短。

输入格式

第一行一个正整数 nn (1≤n≤250000)(1\leq n \leq 250000)

接下来 nn 行,第 i+1i+1 行为 aia_{i}

输出格式

一行一个正整数,表示答案

2023/10/3 18:57
加载中...