Go: package main
import (
	"fmt"
	"os"
	"strconv"
	"bufio"
	"math"
)

var sc = bufio.NewScanner(os.Stdin)

func main(){
	sc.Split(bufio.ScanWords)
	n := nextInt()
	ans := calc(n)
	fmt.Println(int(ans))	// intにしないと指数つき表現になってしまう
}

func calc(n int) float64{
	tmp := 100000.0
	for i:=0; i<n; i++{
		tmp*=1.05
		tmp = Ceil(tmp, -3)
	}
	return tmp
}

func Ceil(f float64, places int) float64{
	shift := math.Pow(10, float64(places))
	return math.Ceil(f * shift)/shift
}

func next()string{
	sc.Scan()
	return sc.Text()
}

func nextInt()int{
	a, _ := strconv.Atoi(next())
	return a
}

Python: #! /usr/bin/python3

m=100
for _ in range(int(input())):
    m = int(m*1.05+0.999)
print(m*1000)

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

Python: from math import ceil
n = int(input())
dept = 100000
for i in range(n):
    dept += dept*0.05
    dept = int(int(ceil(dept/1000)*1000))
print(dept)

Python: import math

interest=100000
n=int(input())

for i in range(n):
    interest=interest*1.05
interest=math.ceil(interest/10000)*10000
print(interest)

Python: import math

n = int(input())
b = 100
for i in range(n):
  b += b * 0.05
  b = math.ceil(b)
print("%d" % b * 1000)

Python: import math
a = 100
b = int(input())

for _ in range(b):
    a = math.ceil(a * 1.05)

a *= 1000

print(a)

Python: import sys
import math

def main():
    n = int(input().rstrip())
    r = 1.05
    digit = 3
    a = 100000
    
    for i in range(n):
        a = math.ceil(a*r/10**digit)*10**digit

    print(a)
    
if __name__ == '__main__':
    main()

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

Python: v = 100000
for _ in [0]*int(input()):
    v *= 1.05
    v += 1000 * (v%1000 > 0)
    v -= v%1000
print(int(v))

Python: import math
n=int(input())
i=1
sum=100
while i<=n:
    sum=math.ceil(sum*1.05)
    i=i+1
print(sum*1000)

Python: import math

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

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

for i in range(n):
    debt *= 1.05
    if debt % 1000 > 0:
        tmp = debt % 1000
        debt -= tmp
        debt += 1000

print(int(debt))

Python: import math
n = int(input())

if n==0:
    a=100000
    
else:
    c = int(100)
    for i in range(n):
        num = c*1.05
        c = math.ceil(num)
        a = c*1000
        
print(a)

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

for i in range(n) :
    s *= 1.05
    m = s % 1000
    if m != 0 :
        s = s - m + 1000

print(int(s))

Python: import math

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

Python: a = int(input())
Y = 100000
i = 1

while a >= i:
    Y = Y * 1.05
    if  Y % 1000 != 0:
        Y = (Y//1000+1) * 1000
        
    i = i + 1
print(int(Y))

Python: while True:
	try:
		n = int(input())
	except EOFError:
		break
	ret=100000.0
	for i in range(n):
		ret=round(ret*1.05+499, -3)
	print(int(ret))

Python: a = 100000;
n = int(input())
while n > 0:
	n -= 1
	a = a + (a * 5) // 100
	a = ((a - 1) // 1000 + 1) * 1000   
print(a)

Python: x = input()

n = 100000
while x > 0:
    n *= 1.05
    mod = n % 1000
    if mod != 0:
        n = n + 1000 - mod
    x -= 1

print(int(n))

Python: import math

def main():
    n = int(input())
    _debt = 100000
    for i in range(n):
        _debt += math.ceil(_debt*0.05*0.001)*1000
    print(_debt)



if __name__ == '__main__':
    main()

Python: #!/usr/bin/env python3
# -*- coding: utf-8 -*-

def update(x):
    y = x * 105 // 100
    r = y % 1000
    y = y // 1000 * 1000
    if r: y += 1000
    return y

def main():
    n = int(input())

    x = 100000
    for _ in range(n):
        x = update(x)

    print(x)

if __name__ == "__main__": main()

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

Python: import math
shuu = input()
num = int(shuu)
ganpon = 1000
i = 1
while i < num:
    ganpon *= 1.05
    ganpon = math.ceil(ganpon)
    i += 1
    pass
ganpon /= 100
ganpon = math.ceil(ganpon)
ganpon *= 10000
print(ganpon)

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

Python: n = int(input())
f = 100000
if n == 0:
    print(int(f))
else:
    for i in range(n):
        f *= 1.05
        #print(f)
        #F = f - f%1000 + 1000
        if f%1000 != 0:
            f = (f//1000)*1000 + 1000
            #print(i,f)
print(int(f))

Python: a = 100000;
n = int(input())
while n > 0:
    n -= 1
    a = a + (a * 5) // 100
    a = ((a - 1) // 1000 + 1) * 1000   # 1000未満の切り上げ
print(a)

Python: # coding: utf-8
# Your code here!

n = int(input())

sum = 100000
for i in range(n):
   sum += sum * 0.05
   if sum % 1000 > 0:
      sum -= sum % 1000
      sum += 1000

print(int(sum))

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

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

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

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

Python: import math

n = int(input())
m = 100000.0
for i in range(n):
    m = math.ceil((m * 1.05)/1000)*1000

print(int(m))

Python: #!/usr/bin/env python3

from math import ceil

n = int(input())

debt = 100000

for i in range(0, n):
    debt = debt * 1.05
    debt = int(ceil(debt / 1000.0) * 1000.0)

print(debt)

Python: import math

def debt(d, n):
    if n == 0:
        return d
    d *= 1.05
    d = math.ceil(d / 1000) * 1000
    return debt(d, n - 1)

n = int(input())
d = 100000
print(debt(d, n))

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

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

Python: import math

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

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

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

Python: n=int(input())
g=100
for i in range(n):
    k=-(-(g*1.05)//1)
    g=k
print(int(1000*k))

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

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

print(int(debt))

Python: n=int(input())
if 0<=n<=100:
    sum=100000
    for i in range (n):
        sum=sum*1.05
        if sum%1000==0:
            pass
        else:
            sum=sum-(sum%1000)+1000
    print(int(sum))

Python: y=100000
n = int(input())
for i in range(n):
    y=y*1.05
    if y%1000==0:
        pass
    else:
        y=y//1000
        y=y+1
        y=y*1000
print(f"{y:.0f}")

Python: #!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys

n = int(sys.stdin.readline())
debt = 100000
interest = debt // 20
for i in range(n):
    debt += interest
if debt % 10000 >= 500:
    debt += 10000 - debt % 10000
print(debt)

Python: import sys

for num in sys.stdin:
    ini = 100000
    num = int(num)
    for i in range(1, num+1):
        ini = ini + ini*0.05
        mod = ini % 1000
        ini = ini - mod
        if mod != 0:
            ini += 1000
    ini = int(ini)
    print(ini)