import java.util.*;
public class Main {
    static Scanner sc = new Scanner(System.in);
    static int n;

    public static void main(String[] args){
        while(read()){
            slove();
        }
    }
    static boolean read(){
        if(!sc.hasNext())return false;
        n = sc.nextInt();
        return true;
    }
    static void slove(){
        double Debt = 100000;
        for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        }
        System.out.println((int)Debt);
    }


} import java.util.*; util.* java public class Main {
    static Scanner sc = new Scanner(System.in);
    static int n;

    public static void main(String[] args){
        while(read()){
            slove();
        }
    }
    static boolean read(){
        if(!sc.hasNext())return false;
        n = sc.nextInt();
        return true;
    }
    static void slove(){
        double Debt = 100000;
        for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        }
        System.out.println((int)Debt);
    }


} Main static Scanner sc = new Scanner(System.in); sc new Scanner(System.in) static int n; n public static void main(String[] args){
        while(read()){
            slove();
        }
    } main {
        while(read()){
            slove();
        }
    } while(read()){
            slove();
        } read() read {
            slove();
        } slove() slove String[] args args static boolean read(){
        if(!sc.hasNext())return false;
        n = sc.nextInt();
        return true;
    } read {
        if(!sc.hasNext())return false;
        n = sc.nextInt();
        return true;
    } if(!sc.hasNext())return false; !sc.hasNext() sc.hasNext() sc.hasNext sc return false; false n = sc.nextInt() n sc.nextInt() sc.nextInt sc return true; true static void slove(){
        double Debt = 100000;
        for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        }
        System.out.println((int)Debt);
    } slove {
        double Debt = 100000;
        for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        }
        System.out.println((int)Debt);
    } double Debt = 100000; Debt 100000 for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        } {
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        } Debt = Debt*1.05 Debt Debt*1.05 Debt 1.05 int r = (int)Debt%1000; r (int)Debt%1000 (int)Debt 1000 if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            } r != 0 r 0 {
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            } Debt += 1000 Debt 1000 Debt -= r Debt r System.out.println((int)Debt) System.out.println System.out System System.out (int)Debt public class Main {
    static Scanner sc = new Scanner(System.in);
    static int n;

    public static void main(String[] args){
        while(read()){
            slove();
        }
    }
    static boolean read(){
        if(!sc.hasNext())return false;
        n = sc.nextInt();
        return true;
    }
    static void slove(){
        double Debt = 100000;
        for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        }
        System.out.println((int)Debt);
    }


} public class Main {
    static Scanner sc = new Scanner(System.in);
    static int n;

    public static void main(String[] args){
        while(read()){
            slove();
        }
    }
    static boolean read(){
        if(!sc.hasNext())return false;
        n = sc.nextInt();
        return true;
    }
    static void slove(){
        double Debt = 100000;
        for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        }
        System.out.println((int)Debt);
    }


} Main
import java.util.*;
public class Main {
    static Scanner sc = new Scanner(System.in);
    static int n;

    public static void main(String[] args){
        while(read()){
            slove();
        }
    }
    static boolean read(){
        if(!sc.hasNext())return false;
        n = sc.nextInt();
        return true;
    }
    static void slove(){
        double Debt = 100000;
        for(int i = 0; i < n; i++){
            Debt = Debt*1.05;
            int r = (int)Debt%1000;
            if(r != 0){
                Debt += 1000;
                Debt -= r;
                //Debt = Math.round(Debt);
            }
        }
        System.out.println((int)Debt);
    }


}