CF2031D.Penchick and Desert Rabbit
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
为了挑战自己的极限,Penchick 决定在阿拉伯沙漠的正午阳光下生存!
在沿着一条线性绿洲跋涉时,Penchick 看到一只沙漠兔子正准备在一排棕榈树之间跳跃。有 n 棵树,每棵树的高度为 ai。
兔子可以在满足下列某一条件时,从第 i 棵树跳到第 j 棵树:
- 当 j<i 且 aj>ai 时:兔子可以向后跳到更高的树。
- 当 j>i 且 aj<ai 时:兔子可以向前跳到更矮的树。
对于每个 i(1≤i≤n),请你求出如果兔子从第 i 棵树出发,能够到达的所有树中高度的最大值。
输入格式
第一行包含一个整数 t(1≤t≤5⋅105),表示测试用例的数量。
每个测试用例的第一行包含一个整数 n(1≤n≤5⋅105),表示树的数量。
每个测试用例的第二行包含 n 个整数 a1,a2,…,an(1≤ai≤n),表示每棵树的高度。
保证所有测试用例中 n 的总和不超过 5⋅105。
输出格式
对于每个测试用例,输出 n 个整数,第 i 个整数表示如果兔子从第 i 棵树出发,能够到达的所有树中高度的最大值。
输入输出样例
输入#1
5 4 2 3 1 4 5 5 4 3 2 1 4 2 1 1 3 4 1 1 3 1 8 2 4 1 6 3 8 5 7
输出#1
3 3 3 4 5 5 5 5 5 2 2 2 3 1 1 3 3 8 8 8 8 8 8 8 8
说明/提示
在第一个测试用例中,初始树的高度为 a=[2,3,1,4]。
- 如果兔子从第一棵树出发,可以跳到第三棵树,因为 3>1 且 1<2。然后,兔子可以跳到第二棵树,因为 2<3 且 3>1。可以证明兔子无法到达第四棵树,因此能够到达的最大高度为 a2=3。
- 如果兔子从第四棵树出发,由于它已经在最高的树上,无需跳跃。
在第二个测试用例中,无论兔子从哪棵树出发,都可以跳到第一棵树。
在第五个测试用例中,如果兔子从第五棵树出发,可以跳到第四棵树,然后跳到第七棵树,最后到达第六棵树。因此,能够到达的最大高度为 8。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?