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)*10))*10000)
}

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]
}

Python: N=1000;print(lambda f,n:f(f,n))(lambda f,n:n==0 and 100*N or(lambda x:x%N>0 and x-x%N+N or x)(f(f,n-1)*105/100),input())

Python: import math

in_week = int(input().rstrip())
tmp_debt = 100000

for i in range(in_week):
    tmp_debt = int(math.ceil( (tmp_debt*1.05)/1000.0 )) * 1000

print(str(tmp_debt))

Python: from math import ceil

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

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

Python: money = 100000
for _ in range(int(input())):
    money += int(money * 0.05)
    if money % 1000 != 0:
        while money % 1000 != 0:
            money += 1
print(money)

Python: debt = 100000.0

a = int(input())
for i in range(a):
    debt = debt * 1.05
    if(debt % 1000):
        debt = (debt // 1000) * 1000 + 1000
print(int(debt))

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

Python: num = 100000

n = int(input())
for i in range(n):
    num*=1.05
    
    if num % 1000 >= 1 :
        a = num % 1000
        num = int(num+1000-a)
    else:
        num = int(num)
        
        
print(num)

Python: week = int(input())


def myround(value, digit=0):
    p = 10 ** digit
    return (value * p * 2 + 1) // 2 / p


print(int(myround(100000 * (1 + 0.05)**week, -4)))

Python: import math

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

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

Python: import math

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

Python: import math
a = 100000
n = int(input())
for _ in range(n):
    a *= 1.05
print(math.ceil(a/10000)*10000)

Python: #Write the program you'd like to run below.
import math
week = int(input())
debt = float(100000)
for i in range(week):
  debt = debt * 1.05
maru = math.ceil(debt / 10000)
ans = int(maru * 10000)
print(ans)

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

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: T=100000
n=int(input())

for x in range(n):
    T*=1.05
    if T%1000==0:
        pass
    else:
        T=T-(T%1000)+1000
print(int(T))

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

Python: def main():
	from math import ceil

	debt = 100000
	n = int(input())

	for _ in range(n):
		debt *= 1.05
		debt = ceil(debt/1000)*1000

	print(debt)


if __name__ == '__main__':
	main()

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

def debt(week):
    debt = 100000
    for i in range(1,n+1):
        debt *= 1.05
        amari = debt % 1000
        if amari:
            debt += 1000 - amari
    return int(debt)

print(debt(n))

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

for i in range(week):
    debt += debt * 0.05
    thousand = int(debt / 1000)
    coin = debt - thousand * 1000
    if 0 < coin:
        thousand += 1 
    debt = thousand * 1000

print(debt)

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

Python: N = int(input())
x = 100000
for i in range(N):
    if x % 20 == 0:
        x = x + (x // 20)
        if x % 1000 > 0:
            x = x - (x  % 1000) + 1000
    else:
        x = 1.05 * x
        x = int(x) + 1
        if x % 1000 > 0:
            x = x - (x % 1000) + 1000

print(x)

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

Python: def next_week(x):
    return ((x * 1.05) // 1000 + 1) * 1000

def week_after(x, n):
    for _ in range(n):
        x = next_week(x)
    return x

if __name__ == '__main__':
    n = int(input())
    print(week_after(100000, n))

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

Python: debt = 100
for i in range(int(input())):
    debt *= 1.05
print(int(debt) * 1000)

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

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

Python: import math

n=int(input())
a=100000

for i in range(n):
    a=a+a*0.05
    if a%1000==0:
        a=a
    else: 
        a=(math.floor(a/1000))
        a=a*1000+1000

print(a)

Python: print(int(round(100000 * (1.05 ** int(input())), -4)))

Python: def ceil(n):
    if n%1000:
        return (1+n//1000)*1000
    else:
        return n
    
def debt(n):
    if n==0: return 100000
    return int(ceil(debt(n-1)*1.05))

print(debt(int(input())))

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

Python: import math

def calc_debt(week=0):
    debt = 100000
    for i in range(week):
        debt = int(math.ceil(debt * 1.05 / 1000))*1000
    return debt 

print(calc_debt(int(input())))

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

Python: import math

x,y = int(input()),100
for i in range(x):
    y = math.ceil(y*1.05)

print(y*1000)

Python: n = int(input())
d = 100000
for i in range(n):
    d = d *105 //100
    d = -(-d//1000)*1000
print(d)

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

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

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

Python: n=int(input())

zandaka=100000

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

print(int(zandaka))

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

Python: # -*- coding: utf-8 -*-

n = int(input())
debt = 10000

for _ in range(n):
    tmp = debt * 0.05
    debt += tmp

print(round(debt / 1000) * 1000, end='')

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: import sys

for line in sys.stdin:
    N = int(line.rstrip())
    print(len([[i0,i1,i2,i3] for i0 in range(10) for i1 in range(10) for i2 in range(10) for i3 in range(10) if sum([i0,i1,i2,i3]) == N]))

Python: # coding:utf-8
import math
week = int(input())
debt = 100000

for i in range(5):
    debt *= 1.05
    debt = math.ceil(debt / 1000) * 1000

print(debt)

Python: import math

x,y = int(input()),100
for i in range(x):
    y = math.ceil(y*1.05)

print(y*1000)