会当凌绝顶,一览众山小。
众所周知,光沿直线传播,如果两个点之间的光路被遮挡住就不能互相看见。
所以此题题意为:当你登上一个山峰时你能看见前后多少山峰呢。
Tip:你不一定只能向下看,你也可以向上看。
第一行输入一个整数 ,表示山峰个数;接下来 行,第 行 2个实数 ,表示第 座山峰的位置和高度(保证每个 都不相同);接下来输入一个整数 ,表示询问个数;接下来一行输入 个整数,表示询问登上了第几座山峰时能看见多少山峰。
输出 行,每行一个正整数,表示每个询问的答案。
6 2 8 1 4 5 3 3 5 4 3 7 4 4 1 3 5 6
5 4 4 4
对于输入的第一个询问,第一座山峰在 处,通过橙色的视线可以看到其他所有5座山峰,故该询问的答案为5。