import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;
import java.util.Stack;
class Person {
int id;
int priority;
public Person(int id, int priority) {
this.id = id;
this.priority = priority;
}
}
public class Main {
public int solution(int n, int m, int[] arr) {
int answer = 1;
Queue<Person> Q = new LinkedList<>();
//환자 번호와 위험도를 동시에 큐에 넣어야 하므로
//번호와 위험도를 갖는 클래스를 만들어 그 객체를 큐에 넣는다.
for(int i = 0; i < n; i++) {
Q.offer(new Person(i, arr[i]));
}
//0번째 환자는 위험도가 60이므로 진료받으면 안됨 맨뒤로!
//1번째 환자는 위험도가 50이므로 진료받으면 안됨 맨뒤로!
//2번째 환자는 위험도가 70이므로 진료받으면 안됨 맨뒤로!
//3번째 환자는 위험도가 80이므로 진료받으면 안됨 맨뒤로!
//4번째 환자는 위험도가 90이므로 진료를 받지만 m번째가 아니므로 answer++
//다시 0번째 환자 맨뒤로! 1번째 맨뒤로! 2번째 맨뒤로!
//3번째 환자는 위험도가 80 진료를 받지만 m번째가 아니므로 answer++
//0번째 맨뒤로! 1번째 맨뒤로! 2번째 환자 진료! answer(3)를 리턴!
while(!Q.isEmpty()) {
Person tmp = Q.poll();//첫번째 사람 꺼내기
//진료여부 판단
for(Person x : Q) {
//자신보다 위험도 높은 사람이 있으면 진료받으면 안되는 사람임
if(x.priority > tmp.priority) {
Q.offer(tmp); //마지막으로 다시 넣기
tmp = null;
break;
}
}
//자신보다 위험도 높은 사람이 없으면
if(tmp!=null) {
//그 때 m번째 환자 인지 확인 하고
if(tmp.id==m) return answer;
//m번째 환자가 아니면 번째를 증가시켜준다.
else answer++;
}
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n = kb.nextInt();
int m = kb.nextInt();
int[] arr = new int[n];
for(int i = 0; i < n; i++) {
arr[i] = kb.nextInt();
}
System.out.print(T.solution(n, m, arr));
}