2823:部落(tribe.cpp)
文件提交:文件名:tribe
内存限制:128 MB
时间限制:1.000 S
评测方式:普通裁判
金币值:
命题人:
1
提交:221
解决:2
题目描述
使用freopen提交。文件名:tribe
在一个山峰中住着许多部落,其中一些部落住在山脚,一些部落住在山腰,一些部落住在山顶。我们假设共有 n\mathit nn 个部落,编号分别为 1,2,3,...,n−1,n1,2,3,...,n-1,n1,2,3,...,n−1,n ,且第 pos\mathit pospos 个部落的位置在山顶。那么编号为 1∼pos1 \sim pos1∼pos 的部落海拔依次上升,从 pos∼npos \sim npos∼n 的部落海拔依次降低。第 i\mathit ii 个部落和第 i+1,i−1\mathit i+1, i-1i+1,i−1 个部落相邻 (2≤i≤n−12 \leq i \leq n-12≤i≤n−1)。
由于山中常年缺水,主要的水资源是山间的流水,具体来说,水资源都聚集在山顶,海拔较低的部落只能使用海拔较高的部落用剩下的水资源。由于分配不均,相邻的部落之间可能会发生战争,其中第 iii 个部落的战斗力为 aia_iai。
当某一个部落的海拔比另一个相邻部落的海拔低,且战斗力比这个部落高,则会对这个部落发动战争。
现在为了避免相邻部落之间发生战争,你可以修改一些部落的战斗力,使得每一对相邻的部落之间都不会有战争。请问最少可以修改几个部落的战斗力才可以满足要求?
输入
输入第一行包含两个正整数 n,pos(1 ≤ n ,pos ≤ 105),分别表示部落的数量以
及住在山顶的部落的编号
输入第二行包含n 个正整数 ai (1 ≤ ai ≤ 109),分别表示每个部落的战斗力。
输出
输出一行一个正整数表示答案
样例输入
5 3
1 5 4 2 1
样例输出
1
提示
pos 为 3,所以 3 应该是战斗力最高的位置。可以考虑将第三个位置改为 5 或
更大的数字(改成 5 时,位置 2 和位置 3 的战斗力相等,不会发动战争,只
有位置 2 严格大于位置 3,才会发动战争)。
【样例 2 输入】
5 2
1 4 4 2 1
【样例 2 输出】
0
【样例 2 说明】
无需修改战斗力即可保持和平
【数据范围】
对于 20% 的数据,有 n ≤ 6
对于 60% 的数据,有n ≤ 1000
对于 100% 的数据,有 n ≤ 105