Go: package main

import (
  "fmt"
)

func main() {
  var a int
  var b int
  b = 100000
  fmt.Scan(&a)
  for i:= 0; i<a; i++ {
    b *= 105
    b /= 100
    if (b%1000 != 0) {
      b -= b%1000
      b += 1000
    }
  }
  fmt.Println(b)
}

Python: debt = 100000
n = int(input())

for i in range(n):
  debt *= 1.05
  if debt % 1000 != 0:
    debt = int(((debt // 1000) + 1) * 1000)

print(debt)

Python: import math
n = int(input())
x = 100000
for i in range(n):
  x *= 1.05
  x = math.ceil(x)
  if x % 1000:
    x = x - (x % 1000) + 1000
print(x)

Python: N=int(input())
a=100000
for i in range(N):
    x=a+(a*0.05)
    
    if x%1000==0:
        a=x
    else:
        a=(x-(x%1000))+1000

print(int(a))

Python: x=100000
for i in range(int(input())):
    x*=1.05
    if x%1000!=0:
        x+=1000-x%1000
print(int(x))

Python: import math

N=int(input())
a=100000

for i in range(N):
    b=a/1000
    a=math.ceil(b*1.05)
    a=a*1000
    
print(a)

Python: n=int(input())
dept=100000
for i in range(n):
    A=dept*0.05/1000
    if(A!=int(A)):
        dept=dept+int(A)*1000+1000
    else:
        dept=dept+int(A)*1000
print(dept)

Python: import math
n = int(input())
s = 100000
r = 0.05
while n > 0:
    s += math.ceil((s * r) / 1000) * 1000
    n -= 1
print(s)

Python: # coding:utf-8
import math
debt = 100000

for _ in range(int(input())):
    debt *= 1.05
    debt = math.ceil(debt / 1000) * 1000

print(debt)

Python: #!/usr/bin/env python3
# -*- coding: utf-8 -*-
def main(): 
	week = int(input())
	base = 100000
	x = 1
	for i in range(week):
		x = round(x * 1.05 + 0.004 ,2)
	print(x)
if __name__ == '__main__':
  main()

Python: import math

while True:
    try:
        N = int(input())
    except ValueError:
        pass
    else:
        break

lent = 100000
for i in range(N):
    lent *= 1.05
    lent = math.ceil(lent / 1000) * 1000
    
print(lent)

Python: n = int(input())
debt = 100000
for i in range(n):
   x = debt*1.05
   if x%1000==0:
       debt = x
   else:
       debt = (x//1000)*1000+1000

print(int(debt))

Python: import math
res = 100
N = int(input())
for i in range(N):
    res = math.ceil(res * 1.05)
print("%d000" % res)

Python: a = int(input())
s = 100000
for i in range(a):
        s = s * 1.05
        if s % 1000:
                s = s - (s % 1000) + 1000
print(int(s))

Python: n = int(input())
a = 100000
for i in range(n):
  a = a * 1.05
  b = 0
  if a % 1000:
    b = 1000
  a = int(a // 1000 * 1000 + b)
print(a)

Python: import math

n = int(input())
debt = 100
for i in range(n):
    debt = math.ceil(debt * 1.05)
print(str(debt * 1000))

Python: import sys
n=int(sys.stdin.readline())
money=100000
for i in range(n):
    money*=1.05
    money=int(money)
    mod = money%1000
    money=money//1000
    if mod>0:
        money+=1
    money=money*1000
print (money)

Python: import math
a=100
for _ in range(int(input())):a=math.ceil(a*1.05)
print(a*1000)

Python: import math
n=int(input())
s=100000
for i in range(n):
	s +=(s*0.05)
s=s/10000
s=int(round(s,0)*10)
print(str(s)+"000")

Python: from decimal import Decimal, ROUND_HALF_UP
week = int(input())
debt = 100000 * (1 + 0.05)**week
print(int(Decimal(debt).quantize(Decimal('1E4'), rounding=ROUND_HALF_UP)))

Python: import math
n = int(input())
debt = 100000
for i in range(n):
	debt = int(math.ceil(debt * 1.05 / 1000)) * 1000
print(debt)

C++: #include <stdlib.h>
#include <string>
#include <vector>
#include <algorithm>
#include <iostream>



using namespace std;

int main()
{
	const int BUFF_SIZE = 100;
	char buff[BUFF_SIZE];
	int y = 100000;

	string s;
	getline(cin, s);
	
	long n;
	sscanf(s.c_str(), "%ld", &n);
	
//	printf("%d\n", n);
	
	for (int i = 0; i < n; i++)
	{
		double z = y;
		z *= 1.05;
		y = (int)z;
		
		sprintf(buff, "%d", y);
		
	
		string t = buff;
		string u = t.substr(t.length() - 3);
		int aa;
		sscanf(u.c_str(), "%ld", &aa);
		
		y /= 1000;
		y *= 1000;
		if (0 < aa)
		{
			y += 1000;
		}
	}
	
	printf("%d\n", y);

	return 0;
}

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

double cutup(double x) {
  if (x - (double)((int)x / 1000) * 1000 > 0) {
    x = (double)((((int)x / 1000) + 1) * 1000);
  }
  return x;
}

double money(double x, int target, int depth = 0) {
  if (target == depth) { return x; }
  return money(cutup(x * 1.05), target, depth + 1);
}

int main() {
  std::cin.tie(0);
  std::ios::sync_with_stdio(false);

  int n, x;
  cin >> n;

  printf("%.0f\n", money(100000., n));

  return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
	bool bo=false;
	int n,a=100000;
	cin>>n;
	for(int i=0;i<n;i++){
		a+=100000*0.05;
	}
	if(a%10000==0 && a%1000==0 && a%100==0 && a%10==0){
		bo=true;
	}
	a/=10000;
	if(bo==false){
		a=a+1;
	}
	cout<<a*10000<<endl;
	return 0;
}

C++: #include <iostream>

using namespace std;

int main(){
	int debt = 100000.0;
	int n, r;
	cin >> n;
	while ( n-- > 0 ){
		debt *= 1.05;
		r = debt % 1000;
		if ( r != 0 ){
			debt = debt - r + 1000;
		}
	}
	cout << debt << endl;

	return 0;
}

C++: #include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
    int n;
    cin >> n;
    cout << 100000 * (1+(n+1)*0.05) << endl;
    return 0;
}

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

int main(){
int n,M,m;
M=100;
cin>>n;
for(int i=0;i<n;i++){
m=(M+19)/20;
M+=m;
}
cout<<M*1000<<endl;
}

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

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

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

C++: #include <iostream>
#include <cstdio>
#include <vector>
#include <algorithm>
#include <string>

using namespace std;

int main (int argc, char * const argv[]) {
    // insert code here...
    int n, t, d=100000;
	
	cin>>n;
	
	for(int i=0;i<n;i++){
		d*=1.05;
		t=d;
		t/=1000;
		t*=1000;
		if(d-t>0){
			d=t+1000;
		}
		//cout<<d<<endl;
		//cout<<d-t<<endl<<endl;
	}
	cout<<d<<endl;
	
	return 0;
}

C++: #include <stdio.h>
#include <string>
#include <iostream>

using namespace std;


int main(){
    int week;
    cin >> week;
    double money =10;
    
    for(int i=0; i<week; i++){
        money=money * 1.05;
    }
    printf("%d\n",int(money+0.999)*10000);
}

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

int main(){
    int n;
    cin >> n;
    int ans;
    double now = 100000;
    for(int i = 0 ; i < n ; ++i){
        now *= 1.05;
        int t = now;
        if(t == now && t % 1000 == 0){
            ans = t;
            continue;
        }
        t = t / 1000 * 1000 + 1000;
        ans = t;
        now = ans;
    }

    cout << ans << endl;

    return 0;
}

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

const double interest = 0.05;
const int roundYen = 1000;

int weeklyAdd(int debt) {
  debt = debt * (1 + interest);
  debt = ceil(debt / roundYen) * roundYen;
  std::cout << debt << '\n';
  return debt;
}

int main(int argc, char const *argv[]) {
  // int week = 5;
  int week;
  std::cin >> week;
  int debt = 100000;

  for (size_t i = 0; i < week; i++) {
    debt = weeklyAdd(debt);
  }

  return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
  int n;
  double num=100000.0;
  cin>>n;
  for(int i=0;i<n;i++){
    num=num*1.05;
    if((int)num%1000>0){
      num=(int)num-(int)num%1000;
      num+=1000.0;
    }
  }
  cout<<(int)num<<endl;
  return 0;
}