Go: package main

import "fmt"

func roundUp100(dept float64) float64 {
	iDept := int(dept)
	if iDept-(iDept/1000*1000) != 0 {
		iDept = ((iDept / 1000) + 1) * 1000
	}
	return float64(iDept)
}

func main() {
	var week int
	fmt.Scan(&week)

	dept := 100000.0
	for i := 0; i < week; i++ {

		dept *= 1.05
		dept = roundUp100(dept)
	}

	fmt.Println(dept)
}

//問題文が理解できていない感

C++: /*
 * http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0007
 */
#include <iostream>
#include <cmath>

using namespace	std;

#define INITIAL 100000
#define INTEREST 1.05
#define CEILING 1000

int
dow(int a, float r, int w)
{
	if (w == 0)
		return a;
	float c = a / CEILING;
	return dow(ceil(c * r) * CEILING, r, --w);
}

int
main()
{
	int w;
	cin >> w;
	cout << dow(INITIAL, INTEREST, w) << endl;
	return 0;
}

C++: #include <cstdio>
#include <cstring>
#include <algorithm>
#include <string>

using namespace std;

int main()
{
	int debt = 100000;
	int n;
	scanf("%d", &n);
	for (int i = 0; i < n; ++i)
	{
		debt += (int)(debt*0.05);
		if (debt % 1000 != 0)
			debt = debt/1000*1000+1000;
	}
	printf("%d\n", debt);
}

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

int main() {
	int loan = 100000;
	int hoge = loan * 0.05;
	int n;
	std::cin >> n;

	for (int i = 0; i < n; i++)
		loan += hoge;
	
	if (loan % 10000 < 5000)
		loan = loan / 10000 * 1000;
	else
		loan = loan / 10000 * 10000 + 10000;
	
	std::cout << loan << std::endl;
}

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

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

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

int main(){
  int n;
  double debt = 10000;
  cin >> n;
  for(int i = 0; i < n; i++){
    debt *= 1.05;
  }
  int result = (int) debt;
  result /= 1000;
  result++;
  result *= 1000;
  cout << result << endl;
}

C++: #include <cstdio>

#define PRINCIPAL 100000
#define RATE 1.05
#define ROUND_UNIT 1000

int main(void)
{
  int n;
  unsigned long debt = PRINCIPAL;

  std::scanf("%d\n", &n);

  for (int i = 0; i < n; i++) {
    debt = debt * RATE;
    debt = (debt + (ROUND_UNIT - 1)) / ROUND_UNIT * ROUND_UNIT;
  }

  std::printf("%lu\n", debt);
  
  return 0;
}

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

int main()
{
	int n;
	int cash = 100000;
	const double rate = 1.05;

	cin >> n;

	for( int i = 0; i < n; ++i ){
		cash = ( int )( cash * rate );
		if( cash % 1000 ){
			cash = ( cash / 1000 + 1 ) * 1000;
		}
	}

	cout << cash;

	return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
  int n,ans=100000;
  cin >>n;
  while(n--){
    ans = (int)(ans*1.05);
    if(ans>(ans/1000)*1000) ans = (ans/1000)*1000+1000;
  }
  cout <<ans<<endl;
  return 0;
}

C++: #include <iostream>
#include <cmath>
using namespace std;
inline int ceil(double x, double base) {
    return ceil(x / base) * base;
}
int main() {
    cin.tie(0);
    ios::sync_with_stdio(false);

    int n; cin >> n;
    double s = 100000;
    while (n--) {
        s = ceil(s * 1.05, 1000);
    }
    cout << int(s) << "\n";

    return 0;
}

C++: #include <math.h>
#include <iostream>
#include <ios>
#include <iomanip>
#include <algorithm>
#include <functional>
#include <string>

#define YES "YES"
#define NO "NO"
#define space ' '

using namespace std;

void func();

int main(void)
{
	
	func();

	return 0;
}


void func()
{
	int n, debt;

	debt = 100000;

	cin >> n;
	while (n-- > 0)
	{
		debt = debt + debt*0.05;
		if (debt % 1000 > 0)
			debt += 1000 - debt % 1000;

		
	}
	cout << debt << endl;
}

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

int main()
{
	int n;
	cin >> n;

	unsigned long long debt = 100000;
	while(n--)
	{
		debt += debt * 0.05;
		if(debt % 1000)
			debt += 1000 - debt % 1000;
	}

	cout << debt << endl;

	return 0;
}

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

  return 0;
}

C++: #include <iostream>
#define debt 100000

using namespace std;

int main(void){

  int n;
  cin >> n;

  int total = debt;
  for( int i = 0 ; i < n ; i++ ){
    total = total * 5 / 100 + total; 
  }
  if( total % 10000 > 0 ){
    total = total / 10000 * 10000 + 10000;
  }

  cout << total << endl;

  return 0;
}

C++: #include <cmath>
#include <cstdlib>
#include <cstdio>

#include <iostream>
#include <vector>
#include <algorithm>
#include <utility>

int main() {
  long n;
  long ans;

  std::cin >> n;

  ans = 100000 * (100 + n * 5) / 100;
  ans += 5000;
  ans /= 10000;
  ans *= 10000;
  
  std::cout << ans << std::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=2; i<week; i++){
        money=double(int(money * 1.05+0.999));
    }
    printf("%d\n",int(money)*10000);
}

C++: #include <iostream>
const int first = 100000;
int round_up(int price) // 1000円未満を切り上げ
{
    if (price%1000 == 0) {
        return price;
    }
    int complement  = 1000 - price%1000; // 補数
    return (price + complement);
}
int get_dept(int n) // n週間後
{
    int dept = first;
    for (int i=0; i<n; i++) {
        dept += dept * 0.05;
        dept = round_up(dept);
    }
    return dept;
}
int main()
{
    int n;
    std::cin  >> n;
    std::cout << get_dept(n) << std::endl;
}

C++: #include <iostream>
using namespace std;
int main(){
	int n;
	cin >> n;
	long a = 100000;
	for(int i=0;i<n;i++){
		a = (a+a/20);
		if(a%1000!=0) a = (a/1000+1)*1000;
	}
	cout << a << endl;
}

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

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

using namespace std;

int main() {
  int m=100000, n;
  scanf("%d", &n);
  for(int i=0;i<n;i++) {
    m*=1.05;
    if (m%1000 != 0)
      m+=1000;
    m=m/1000*1000;
  }
  printf("%d\n", m);
}

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

int main() {
    int d = 100000;
    int n;
    cin >> n;
    while(n-- > 0) {
        d *= 1.05;
        if(d % 1000) {
            d = (d / 1000 + 1) * 1000;
        }
    }
        cout << d << endl;
    return 0;
}

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

int main(){

	int i,n=100000,m;

	cin >> i;
	while(i--){
		n+=n*0.05;
		m=n%1000;
		if(m){
			n+=1000-m;
		}
	}
	cout << n << endl;

	return 0;
}

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

using namespace std;

int main() {
    int money = 100000;
    int n;
    cin >> n;
    for (int i=0; i<n; ++i) {
        money = money + ceil(money * 0.05 / 1000) * 1000;
    }
    cout << money << endl;
    return 0;
}

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

int main() {
	int n, i;
	long debt = 100000;
	cin >> n;
	for (i = 0; i < n; i++) {
		debt = debt * 1.05;
		debt = ceil((double)debt / 1000) * 1000;
	}
	cout << debt << endl;
	return 0;
}

C++: #include<bits/stdc++.h>

using namespace std;

main(){
	int a=100000;
	int b;
	cin >> b;
	int c=0;
	while (c<b){
		a=a+a*0.05;
		c=c+1;
		a=((a+999)/1000)*1000;
	}
	printf("%d\n",a);
}

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

int main()
{
	int n;
	float b=100000;

	cin>>n;

	for(int i=0;i<n;i++){
		b*=1.05;
		b=(int)((b+999)*0.001);
		b*=1000;
	}
	cout<<b<<endl;
}

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