#include <bits/stdc++.h>
clock_t START, END;
void __stTIME();
void __enTIME();
void __IOPUT();
using namespace std;
const int maxn = 2e5 + 10;
int arr[maxn];
int main(void) {
  __stTIME();
  __IOPUT();
  int n, a, b;
  scanf("%d %d %d", &n, &a, &b);
  int B = b;
  for (int i = 1; i <= n; i++) scanf("%d", &arr[i]);
  int ans = 0;
  for (int i = 1; i <= n; i++) {
    if (a == 0 && b == 0) break;
    if (arr[i] == 0) {
      if (b > 0)
        b -= 1;
      else
        a -= 1;
    } else {
      if (b == B)
        b -= 1;
      else if (a > 0)
        a -= 1, b += 1;
      else
        b -= 1;
    }
    ans++;
  }
  printf("%d\n", ans);
  __enTIME();
  return 0;
}
void __stTIME() {}
void __enTIME() {}
void __IOPUT() {}
