CF1032G Chattering

题目描述

有 $n$ 只鹦鹉围成一圈站立。每只鹦鹉在其他鹦鹉中有一定的“尊重值”,记为 $r_i$。当一只尊重值为 $x$ 的鹦鹉开始喋喋不休时,它右边和左边各 $x$ 只邻居会在 1 秒后开始重复它的话。接着,这些邻居的邻居也会开始重复,以此类推,直到所有鹦鹉都开始喋喋不休。 现在给出所有鹦鹉的尊重值。对于每只鹦鹉,回答这样一个问题:如果这只鹦鹉最先开始喋喋不休,最少需要多少秒,所有其他鹦鹉才会全部开始重复?

输入格式

第一行输入一个整数 $n$,表示鹦鹉的数量($1 \leq n \leq 10^5$)。 第二行输入 $n$ 个整数 $r_1, r_2, \ldots, r_n$,依次表示每只鹦鹉的尊重值($1 \leq r_i \leq n$)。

输出格式

输出 $n$ 个整数,第 $i$ 个数表示如果第 $i$ 只鹦鹉最先开始喋喋不休,所有鹦鹉全部开始喋喋不休所需的秒数。

说明/提示

由 ChatGPT 4.1 翻译