#include #define rep(i,n) for(int i = 0; i < int(n); i++) #define rrep(i,n) for(int i = int(n)-1; i >= 0; i--) #define all(a) a.begin(),a.end() #define rall(a) a.rbegin(),a.rend() #define pb push_back using namespace std; using ll = long long; using P = pair; template bool chmax(T &a, const T &b) {if(a < b) {a = b; return true;} return false;} template bool chmin(T &a, const T &b) {if(b < a) {a = b; return true;} return false;} int dx[] = {1, 0,-1, 0, 1, 1,-1,-1}; int dy[] = {0, 1, 0,-1, 1,-1, 1,-1}; ll mod = 998244353; ll MOD = 1000000007; ll inf = 1001001001; ll INF = 1001001001001001001; int main() { int N,K; cin >> N >> K; vectorp(N); rep(i,N) cin >> p[i]; sort(rall(p)); if(K == N) { cout << K << endl; } else { int res = p[K-1]-1; if(p[K] == p[K-1]) { res = p[K-1]; } int ans = 0; rep(i,N) { if(p[i] > res) { ans++; } } cout << ans << endl; } }