Go: package main

import (
        "fmt"
        "math"
)

var interests [101]float64

func main() {
        var m int
        fmt.Scanf("%d", &m)
        fmt.Printf("%d\n", int(math.Ceil(interest(m)*100))*1000)
}

func interest(m int) (i float64){
        if interests[m] > 0 {
                return interests[m]
        }

        if m == 0 {
                interests[0] = 1.0
                return interests[0]
        }

        if m == 1 {
                interests[1] = 1.05
                return interests[1]
        }
        interests[m] = interest(m/2) * interest(m/2) * interest(m%2)
        return interests[m]
}

C++: #include<iostream>

int week(int money){
	money = money + money * 0.05;
	money = money + 1000 - ( money % 1000 );
	return money;
}

int main(void){
	int n;
	int money = 100000;
	cin >> n;
	for(int i = 0;i < n;i++){
		money = week(money);
	}
	
	return 0;
}

C++: #include<iostream>
#include<iomanip>
#include<string>
#include<algorithm>
#include<cmath>
using namespace std;

int main(){
    int a,s=100000;
    cin>>a;
    for(int i=0;i<a;i++){
        s=s*1.05;
        if(s%1000!=0){
            s=1000*(s/1000+1);
        }
    }
    cout<<s<<endl;
    return 0;
}

C++: #include<iostream>
using namespace std;

int main(){
  int n,i,a=100000;

  cin>> n;
  for(i=0;i<n;i++){
    a=a+(a*0.05);
    if(a%1000 != 0){
      a=a-(a%1000)+1000;
    }
  }
  cout << a << endl;



}

C++: #include <iostream>

using namespace std;

int main()
{
	unsigned long long debt = 100000;
	int n;
	cin >> n;
	for (int i = 0; i < n; ++i) {
		debt *= 1.05;
		const int mod = debt % 1000;
		if (mod != 0) {
			debt -= mod - 1000;
		}
	}
	cout << debt << endl;

	return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;
int main(){
	long long n,ans=100000;
	cin >> n;
	for(int i=0;i<n;i++){
		ans+=ans/20;
		if(ans%1000>0){
			ans/=1000;
			ans++;
			ans*=1000;
		}
	}
	cout << ans << endl;
	return 0;
}

C++: #include<iostream>
#include<algorithm>
using namespace std;
int main(){
	int n,i,kane=100000;
	cin>>n;
	for(i=0;i<n;i++){
		kane=kane*1.05;
	}
	kane=kane-kane%1000+1000;
	cout<<kane<<endl;
	return 0;
}

C++: #include <iostream>
#include <cmath>
#include <vector>
#include <algorithm>
using namespace std;
int main () {
	int d = 100000;
	int n;
	cin >> n;
	for(int i = 0; i < n; i++){
		d *= 1.05f;
		int a = d % 1000;
		if(a != 0){
			d += 1000;
			d -= a;
		}
	}
	cout << d << endl;
}

C++: #include <iostream>
#include <cmath>

using namespace std;

int roundUp(int x, int index);

int main(void)
{
    int i;
    int n;
    double intrst;
    int debt;
    
    cin >> n;
    
    debt = 100000;
    intrst = 0.05;
    for (i = 0; i < n; i++) {
        debt *= 1.0 + intrst;
    }
    debt = roundUp(debt, 4);
    cout << debt << endl;
    
    return 0;
}

int roundUp(int x, int index)
{
    int exp10;
    
    exp10 = pow(10, index - 1);
    x += exp10 - exp10 / 10;
    x /= exp10;
    x *= exp10;
    
    return x;
}

C++: #include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    
    int debt = 100000;
    for(int i=0; i<n; i++) {
        debt *= 1.05;
        if(debt%1000 != 0) {
            debt /= 1000;
            debt *= 1000;
            debt += 1000;
        }
    }
    cout << debt << endl;
    return 0;
}

C++: #include<stdio.h>
int main(void)
{
	int n
	float p
	scanf("%d",&n);
	p=1.05;
	for(i=0;i<n;i++){
		w=100000*p;
		if(1000%w>0){
			w=w-(1000%w)+1000;
		}

C++: #include<iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <math.h>
using namespace std;
#include <sstream>
typedef long double ld;
int a;
int main(){
cin>>a;
 double c=100000.0;
for (int i = 0; i < a; ++i) {
	c=c*1.05;
	c=ceil(c*0.001);
	c=c*1000;
}
cout<<c;
}

C++: #include<stdio.h>
#include<stdlib.h>
#include<iostream>
#include<string>
#include<vector>
#include<math.h>
#include<queue>
#include <algorithm>
#include<functional>
#include<cstdlib>
#include<cmath>


#define REP(i, n) for(int i = 0;i < n;i++)
#define REPR(i, n) for(int i = n;i >= 0;i--)
#define FOR(i, m, n) for(int i = m;i < n;i++)
#define FORR(i, m, n) for(int i = m;i >= n;i--)
#define CI cin >>
#define CO cout <<
#define E << endl;

using namespace std;

typedef pair<int, int> P;
typedef pair<long, long> LP;
typedef pair<int, P> PP;
typedef pair<long, LP> LPP;



int dy[] = { 0, 0, 1, -1, 0 };
int dx[] = { 1, -1, 0, 0, 0 };

int A = 0, B = 0, K = 0, T = 0, W = 0, N = 0, H = 0;
int n = 0;
double L = 0;
double S = 0;
double ar = 0, br = 0, cr = 0;
int answer = 0;

string C;
string sA, strB;
vector<vector<char>> map;
vector<double> num;
vector<string> str;

int sum = 0;

vector<int> value;
vector<int> weight;

int dp[110][10010];

int data_[210][2] = { -2 };

void input(void) {
	CI n;
	return;
}


int main(void) {
	input();
	double money = 100000;
	
	for (int i = 0; i < n; i++) {
		money *= 1.05;
		if ((int)money % 1000 > 0) {
			money = money - ((int)(money) % 1000) + 1000 - (money - (double)(int)money);
		}
		
	}
	
	CO money E
	

	return 0;
}

C++: #include <iostream>
#include <cmath>
using namespace std;

int RoundUp(int Integer, int Power)
{
	int Place = pow(10, Power);
	return Place * ceil(Integer / Place);
}

int main()
{
	int Debt = 100000;
	int n;
	cin >> n;
	for(int i = 0; i < n; i++){
		Debt = RoundUp(1.05 * Debt, 3);//?????¬???????????????????????±????????§??????????????????????????????????????????
	}
	cout << Debt << endl;
	return 0;
}

C++: #include <iostream>
#include <cstdio>
using namespace std;
typedef long long l;

l convert(l money) {
    double temp = money;
    temp /= 1000;
    if(temp > 0) money += 1000;
    money -= money % 1000;
    return(money);
}

int main(void) {
    int n; cin >> n;
    l now = 100000;
    l plus = now * 0.05;
    for(int r = 0; r < n; r++) {
        now += plus;
        now = convert(now);
    }
    cout << now << endl;
    return(0);
}

C++: p 13530000

C++: #include<iostream>

using namespace std;

int main(){
  typedef long int li;
  li a = 100000,b;
  int n;
  cin >> n;
  
  for(int i = 0; i < n; i++){
    a = a * 1.05;
    b = a%1000;
    if(b != 0) a = a - b + 1000;
  }
  cout << a << endl;
}

C++: #include<iostream>
using namespace std;

int main(){
	int input, money = 100000;
	cin >> input;

	for(int i=0; i < input; i++){
		money *= 1.05;
		if(0 < money % 1000) money = money - money%1000 + 1000;
	}

	cout << money << endl;
}

C++: #include<iostream>
int main(){
	int a,i,n;
	a=100000;
	std::cin>>n;
	for(i=0;i<<n;i++){
		a=a*1.05;
		if(a&1000!=0){
		a=a-a%1000;
		a=a+1000;
		}
	}
	std::cout<<a<<std::endl;
	return 0;
}

C++: #include <iostream>
#include <math.h>
using namespace std;
int main(){
	int debt = 100000;
	int n;
	cin >> n;
	for(int i=0; i < n; i++){
		debt *= 1.05;
		if(debt % 1000 > 0){
			debt = debt +1000 - (debt % 1000);
		}
	}
	cout << debt << endl;
	return(0);
}

C++: #include <iostream>
#include <math.h>

using namespace std;

int main() {
	
	double weeks=0;
	double debit=100.0;
	
	
	cin >> weeks;
	
	for(int i=0; i<weeks;i++){
		debit=debit+debit*0.05;
		debit=ceil(debit);
	}
	
	cout <<debit*1000;
	
	
	return 0;
}

C++: #include<iostream>
using namespace std;
int main() {
double n=100000;
int i,b;
cin>>b;
for(i=0;i<b;i++){
n*=1.05;
n=(int)(n+999)/1000*1000;
}
cout<<(int)n<<endl;
  return 0;
}

C++: #include<iostream>
#include<math.h>

using namespace std;

int main(){
    int week, fraction;

    cin >> week;
        double debt = 100000;
        double const rate = 1.05;

        for (int i = 0; i < week; i++){
            debt = debt*rate;
            fraction = (int)debt % 1000;

            if (fraction > 0){
                debt = debt + 1000 - fraction;
            }
        }
        cout << debt << endl;

    return 0;
}

C++: #include<stdio.h>
int main(void){
	int n,k=100000;
	scanf("%d",&n);
	while(n>0){
		n--;
		k*=1.05;
		k=(k/1000+1)*1000;
	}
	printf("%d\n",k);
	return 0;
}