import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in));
        int intInputWeek = Integer.parseInt(bufferedReader.readLine());

        // 借金計算
        double totalDebt = calcDebt(100000, intInputWeek);
        System.out.println((int) totalDebt);
    }

    /**
     * 借金計算メソッド（週利0.05%）
     * @param debt 現在の借金
     * @param week 現在の残り週
     * @return 借金額
     */
    private static double calcDebt(double debt, int week) {
        if (week == 0) {
            return debt;
        }
        debt *= 1.05;

        // 1000円未満は切り上げる
        double debtPlus = debt / 1000 - (int) (debt / 1000);
        if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000;

        return calcDebt(debt, --week);
    }

} import java.io.BufferedReader; BufferedReader java.io import java.io.IOException; IOException java.io import java.io.InputStreamReader; InputStreamReader java.io public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in));
        int intInputWeek = Integer.parseInt(bufferedReader.readLine());

        // 借金計算
        double totalDebt = calcDebt(100000, intInputWeek);
        System.out.println((int) totalDebt);
    }

    /**
     * 借金計算メソッド（週利0.05%）
     * @param debt 現在の借金
     * @param week 現在の残り週
     * @return 借金額
     */
    private static double calcDebt(double debt, int week) {
        if (week == 0) {
            return debt;
        }
        debt *= 1.05;

        // 1000円未満は切り上げる
        double debtPlus = debt / 1000 - (int) (debt / 1000);
        if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000;

        return calcDebt(debt, --week);
    }

} Main public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in));
        int intInputWeek = Integer.parseInt(bufferedReader.readLine());

        // 借金計算
        double totalDebt = calcDebt(100000, intInputWeek);
        System.out.println((int) totalDebt);
    } main {
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in));
        int intInputWeek = Integer.parseInt(bufferedReader.readLine());

        // 借金計算
        double totalDebt = calcDebt(100000, intInputWeek);
        System.out.println((int) totalDebt);
    } BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in)); bufferedReader new BufferedReader(
                new InputStreamReader(System.in)) int intInputWeek = Integer.parseInt(bufferedReader.readLine()); intInputWeek Integer.parseInt(bufferedReader.readLine()) Integer.parseInt Integer bufferedReader.readLine() bufferedReader.readLine bufferedReader double totalDebt = calcDebt(100000, intInputWeek); totalDebt calcDebt(100000, intInputWeek) calcDebt 100000 intInputWeek System.out.println((int) totalDebt) System.out.println System.out System System.out (int) totalDebt String[] args args /**
     * 借金計算メソッド（週利0.05%）
     * @param debt 現在の借金
     * @param week 現在の残り週
     * @return 借金額
     */
    private static double calcDebt(double debt, int week) {
        if (week == 0) {
            return debt;
        }
        debt *= 1.05;

        // 1000円未満は切り上げる
        double debtPlus = debt / 1000 - (int) (debt / 1000);
        if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000;

        return calcDebt(debt, --week);
    } calcDebt {
        if (week == 0) {
            return debt;
        }
        debt *= 1.05;

        // 1000円未満は切り上げる
        double debtPlus = debt / 1000 - (int) (debt / 1000);
        if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000;

        return calcDebt(debt, --week);
    } if (week == 0) {
            return debt;
        } week == 0 week 0 {
            return debt;
        } return debt; debt debt *= 1.05 debt 1.05 double debtPlus = debt / 1000 - (int) (debt / 1000); debtPlus debt / 1000 - (int) (debt / 1000) debt / 1000 debt 1000 (int) (debt / 1000) debt 1000 if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000; debtPlus > 0 debtPlus 0 debt = debt + 1000 - debtPlus * 1000 debt debt + 1000 - debtPlus * 1000 debt + 1000 debt 1000 debtPlus * 1000 debtPlus 1000 return calcDebt(debt, --week); calcDebt(debt, --week) calcDebt debt --week week double debt debt int week week public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in));
        int intInputWeek = Integer.parseInt(bufferedReader.readLine());

        // 借金計算
        double totalDebt = calcDebt(100000, intInputWeek);
        System.out.println((int) totalDebt);
    }

    /**
     * 借金計算メソッド（週利0.05%）
     * @param debt 現在の借金
     * @param week 現在の残り週
     * @return 借金額
     */
    private static double calcDebt(double debt, int week) {
        if (week == 0) {
            return debt;
        }
        debt *= 1.05;

        // 1000円未満は切り上げる
        double debtPlus = debt / 1000 - (int) (debt / 1000);
        if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000;

        return calcDebt(debt, --week);
    }

} public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in));
        int intInputWeek = Integer.parseInt(bufferedReader.readLine());

        // 借金計算
        double totalDebt = calcDebt(100000, intInputWeek);
        System.out.println((int) totalDebt);
    }

    /**
     * 借金計算メソッド（週利0.05%）
     * @param debt 現在の借金
     * @param week 現在の残り週
     * @return 借金額
     */
    private static double calcDebt(double debt, int week) {
        if (week == 0) {
            return debt;
        }
        debt *= 1.05;

        // 1000円未満は切り上げる
        double debtPlus = debt / 1000 - (int) (debt / 1000);
        if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000;

        return calcDebt(debt, --week);
    }

} Main
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(System.in));
        int intInputWeek = Integer.parseInt(bufferedReader.readLine());

        // 借金計算
        double totalDebt = calcDebt(100000, intInputWeek);
        System.out.println((int) totalDebt);
    }

    /**
     * 借金計算メソッド（週利0.05%）
     * @param debt 現在の借金
     * @param week 現在の残り週
     * @return 借金額
     */
    private static double calcDebt(double debt, int week) {
        if (week == 0) {
            return debt;
        }
        debt *= 1.05;

        // 1000円未満は切り上げる
        double debtPlus = debt / 1000 - (int) (debt / 1000);
        if (debtPlus > 0)
            debt = debt + 1000 - debtPlus * 1000;

        return calcDebt(debt, --week);
    }

}