#include<bits/stdc++.h>
#define PB push_back
using namespace std;
typedef vector<int> VI;
int n, m, a, b;

VI d1, d2;
int use = 0;
signed main()
{
  cin >> n >> m >> a >> b;
  for(int i = 0; i < n; i++){
    int d;
    cin >> d;
    d1.PB(d);
  }

  for(int i = 0; i < d1.size(); i++){
    if(d1[i] < a){
      break;
    }
    else{
      d2.PB(d1[i]);
    }
  }

  if(n - d2.size() < m){
    while(d2.size()){
      if(*(d2.end() - 1) <= b){
	d2.erase(d2.end() - 1);
      }
      else{
	break;
      }
    }
  }
  
  cout << d2.size() << endl;
  return 0;
}