#include <stdio.h>

#define n 10

int occ(int *p,int dim,int X);

int main() {
    int v[n]={4,7,8,0,2,12,4,2,63,10}; //it is only an example
    int X=0;
    int ok;
    ok=occ(v,n,X);
    if(ok){
        printf("\n%d\nFound!",X); //check if the recursive function works properly
    }
    return 0;
}

int occ(int *p,int dim,int X){

  int pivot,a=0,b=0;
  pivot=(dim)/2;
  if(dim==0){
      return 0;
  }

  if(*(p+pivot)==X)
      return 1;

  if (pivot != 0)
  {
    a=occ(p,pivot,X);
    b=occ(p+pivot,dim-pivot,X);
  }

  if(a+b>=1)
      return 1;
  else{
      return 0;
  }
}

