//2019/3/12
import java.util.Scanner;
public class Main{

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();

		int B = sc.nextInt();

		int K = sc.nextInt();

		int ans = 0;

		int i = 0;

		if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}
		System.out.println(ans);
	}

} import java.util.Scanner; Scanner java.util public class Main{

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();

		int B = sc.nextInt();

		int K = sc.nextInt();

		int ans = 0;

		int i = 0;

		if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}
		System.out.println(ans);
	}

} Main public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();

		int B = sc.nextInt();

		int K = sc.nextInt();

		int ans = 0;

		int i = 0;

		if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}
		System.out.println(ans);
	} main {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();

		int B = sc.nextInt();

		int K = sc.nextInt();

		int ans = 0;

		int i = 0;

		if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}
		System.out.println(ans);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int A = sc.nextInt(); A sc.nextInt() sc.nextInt sc int B = sc.nextInt(); B sc.nextInt() sc.nextInt sc int K = sc.nextInt(); K sc.nextInt() sc.nextInt sc int ans = 0; ans 0 int i = 0; i 0 if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		} A<B A B {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		} for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			} int j=A; int j=A; j A i<K i K j-- j-- j {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			} {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			} if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				} A%j==0 && B%j==0 A%j==0 A%j A j 0 B%j==0 B%j B j 0 {

					i++;

					ans = j;
				} i++ i ans = j ans j {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		} for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			} int j=B; int j=B; j B i<K i K j-- j-- j {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			} {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			} if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				} A%j==0 && B%j==0 A%j==0 A%j A j 0 B%j==0 B%j B j 0 {

					i++;

					ans = j;
				} i++ i ans = j ans j System.out.println(ans) System.out.println System.out System System.out ans String[] args args public class Main{

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();

		int B = sc.nextInt();

		int K = sc.nextInt();

		int ans = 0;

		int i = 0;

		if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}
		System.out.println(ans);
	}

} public class Main{

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();

		int B = sc.nextInt();

		int K = sc.nextInt();

		int ans = 0;

		int i = 0;

		if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}
		System.out.println(ans);
	}

} Main
//2019/3/12
import java.util.Scanner;
public class Main{

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int A = sc.nextInt();

		int B = sc.nextInt();

		int K = sc.nextInt();

		int ans = 0;

		int i = 0;

		if(A<B) {

			for(int j=A;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}else {

			for(int j=B;i<K;j--) {

				if(A%j==0 && B%j==0) {

					i++;

					ans = j;
				}
			}
		}
		System.out.println(ans);
	}

}
