import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = Integer.parseInt(sc.next());
        int b = Integer.parseInt(sc.next());
        int k = Integer.parseInt(sc.next());
        int cnt = 0;
        int ans = 0;
        for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        }
        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 = Integer.parseInt(sc.next());
        int b = Integer.parseInt(sc.next());
        int k = Integer.parseInt(sc.next());
        int cnt = 0;
        int ans = 0;
        for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        }
        System.out.println(ans);
    }
} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = Integer.parseInt(sc.next());
        int b = Integer.parseInt(sc.next());
        int k = Integer.parseInt(sc.next());
        int cnt = 0;
        int ans = 0;
        for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        }
        System.out.println(ans);
    } main {
        Scanner sc = new Scanner(System.in);
        int a = Integer.parseInt(sc.next());
        int b = Integer.parseInt(sc.next());
        int k = Integer.parseInt(sc.next());
        int cnt = 0;
        int ans = 0;
        for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        }
        System.out.println(ans);
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int a = Integer.parseInt(sc.next()); a Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int b = Integer.parseInt(sc.next()); b Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int k = Integer.parseInt(sc.next()); k Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int cnt = 0; cnt 0 int ans = 0; ans 0 for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        } int i = Math.min(a, b); int i = Math.min(a, b); i Math.min(a, b) Math.min Math a b i >= 0 i 0 i-- i-- i {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        } {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        } if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            } a % i == 0 && b % i == 0 a % i == 0 a % i a i 0 b % i == 0 b % i b i 0 {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            } cnt++ cnt if (cnt == k) {
                    ans = i;
                    break;
                } cnt == k cnt k {
                    ans = i;
                    break;
                } ans = i ans i break; 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 = Integer.parseInt(sc.next());
        int b = Integer.parseInt(sc.next());
        int k = Integer.parseInt(sc.next());
        int cnt = 0;
        int ans = 0;
        for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        }
        System.out.println(ans);
    }
} public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = Integer.parseInt(sc.next());
        int b = Integer.parseInt(sc.next());
        int k = Integer.parseInt(sc.next());
        int cnt = 0;
        int ans = 0;
        for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        }
        System.out.println(ans);
    }
} Main
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = Integer.parseInt(sc.next());
        int b = Integer.parseInt(sc.next());
        int k = Integer.parseInt(sc.next());
        int cnt = 0;
        int ans = 0;
        for (int i = Math.min(a, b); i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                cnt++;
                if (cnt == k) {
                    ans = i;
                    break;
                }
            }
        }
        System.out.println(ans);
    }
}