由于某些原因本题仅支持 C++, C++11 语言的提交。
植物学家 Hazel 参观过新加坡植物园的一个特别展览。在这次展览中,有
对于每棵植物
例如,假设
你可以假设 Hazel 记录的数值
本题要求你比较
植物
一定比植物 高:对于任意一组符合数组 且互不相同的高度 ,都有 。植物
一定比植物 矮:对于任意一组符合数组 且互不相同的高度 ,都有 。该比较没有定论:以上两种情况都不成立。
实现细节
你必须引用 plants.h
头文件。
要求你实现以下函数:
void init(int k, int[] r)
:决定每个 数值的连续植物的棵数。 :一个大小为 的数组,其中 是植物 顺时针方向的后 棵植物中比它高的棵数。- 该函数恰好被调用一次,且在对
compare_plants
的任何调用之前。
int compare_plants(int x, int y)
:待比较的植物的编号。- 该函数应该返回:
:如果植物 一定比植物 高, :如果植物 一定比植物 矮, :如果该比较没有定论。
- 该函数恰好被调用
次。
输入格式
评测程序示例以如下格式读取输入数据:
- 第
行: - 第
行: - 第
行: ,表示第 次调用compare_plants
时的参数
输入格式
评测程序示例以如下格式打印你的答案:
- 第
行: 第 次调用compare_plants
的返回值
样例一
input
4 3 2 0 1 1 2 0 2 1 2
output
1 -1
explanation
考虑以下调用:
init(3, [0, 1, 1, 2])
假设评测程序调用了 compare_plants(0, 2)
。由
假设评测程序接下来调用了 compare_plants(1, 2)
。由于对每组符合以上条件的植物高度,都有植物
样例二
input
4 2 2 0 1 0 1 0 3 1 3
output
1 0
explanation
考虑以下调用:
init(2, [0, 1, 0, 1])
假设评测程序调用了 compare_plants(0, 3)
。由
假设评测程序接下来调用了 compare_plants(1, 3)
。两组高度
限制与约定
对于
(对所有 )- 存在一组或多组互不相同的高度符合数组
记录的情况
子任务 | 附加限制 | 分值 |
---|---|---|
每次 compare_plants 调用的正确答案是 |
||
每次调用 compare_plants 时有 |
||
没有附加约束条件 |
时间限制:
空间限制: