import java.util.*;
public class Main{
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    long A[] = new long[N];
    for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    }
    int answer = 100;
    int tmp =0;
    for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    }
    System.out.println(answer);
  }
  
  public static int divcnt(long n){
    int res =0;
    while(n%2==0){
      n=n/2;
      res++;
    }
    return res;
  

  }
} import java.util.*; util.* java public class Main{
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    long A[] = new long[N];
    for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    }
    int answer = 100;
    int tmp =0;
    for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    }
    System.out.println(answer);
  }
  
  public static int divcnt(long n){
    int res =0;
    while(n%2==0){
      n=n/2;
      res++;
    }
    return res;
  

  }
} Main public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    long A[] = new long[N];
    for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    }
    int answer = 100;
    int tmp =0;
    for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    }
    System.out.println(answer);
  } main {
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    long A[] = new long[N];
    for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    }
    int answer = 100;
    int tmp =0;
    for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    }
    System.out.println(answer);
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc long A[] = new long[N]; A new long[N] N for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    } int i=0; int i=0; i 0 i<N i N i++ i++ i {
      A[i]=sc.nextLong();
    } {
      A[i]=sc.nextLong();
    } A[i]=sc.nextLong() A[i] A i sc.nextLong() sc.nextLong sc int answer = 100; answer 100 int tmp =0; tmp 0 for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    } int i=0; int i=0; i 0 i<N i N i++ i++ i {
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    } {
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    } tmp=divcnt(A[i]) tmp divcnt(A[i]) divcnt A[i] A i if(tmp<answer){
        answer=tmp;
      } tmp<answer tmp answer {
        answer=tmp;
      } answer=tmp answer tmp System.out.println(answer) System.out.println System.out System System.out answer String[] args args public static int divcnt(long n){
    int res =0;
    while(n%2==0){
      n=n/2;
      res++;
    }
    return res;
  

  } divcnt {
    int res =0;
    while(n%2==0){
      n=n/2;
      res++;
    }
    return res;
  

  } int res =0; res 0 while(n%2==0){
      n=n/2;
      res++;
    } n%2==0 n%2 n 2 0 {
      n=n/2;
      res++;
    } n=n/2 n n/2 n 2 res++ res return res; res long n n public class Main{
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    long A[] = new long[N];
    for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    }
    int answer = 100;
    int tmp =0;
    for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    }
    System.out.println(answer);
  }
  
  public static int divcnt(long n){
    int res =0;
    while(n%2==0){
      n=n/2;
      res++;
    }
    return res;
  

  }
} public class Main{
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    long A[] = new long[N];
    for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    }
    int answer = 100;
    int tmp =0;
    for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    }
    System.out.println(answer);
  }
  
  public static int divcnt(long n){
    int res =0;
    while(n%2==0){
      n=n/2;
      res++;
    }
    return res;
  

  }
} Main
import java.util.*;
public class Main{
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    int N = sc.nextInt();
    long A[] = new long[N];
    for(int i=0;i<N;i++){
      A[i]=sc.nextLong();
    }
    int answer = 100;
    int tmp =0;
    for(int i=0;i<N;i++){
      tmp=divcnt(A[i]);
      if(tmp<answer){
        answer=tmp;
      }
    }
    System.out.println(answer);
  }
  
  public static int divcnt(long n){
    int res =0;
    while(n%2==0){
      n=n/2;
      res++;
    }
    return res;
  

  }
}