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=int(input())
a=100000
while n!=0:
    a=a*1.05
    if a%1000!=0:
        a=a-(a%1000)+1000
    
    
    n=n-1
print(int (a))

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

money = 100000

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

print(money)

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

Python: from math import ceil

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

print(debt * 1000)

Python: import math

def calc_debt(week=0):
    return math.ceil(100000 * (1.05 ** (week + 1))//10000)*10000

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

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

Python: # coding: utf-8
# Your code here!
import math
n = int(input())

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

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

import sys

def debt_interest(debt, weeks, rate=0.05, cut_up=1000):
    if weeks != 1:
        debt = debt_interest(debt, weeks-1, rate=rate, cut_up=cut_up)

    debt *= 1 + rate
    c = debt % cut_up
    if c != 0:
        debt += cut_up - c
    return debt

def main():
    debt = 100000.
    n = int(input())
    ret = debt_interest(debt, n)
    print(int(ret))

if __name__ == '__main__':
    main()

Python: from math import ceil

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

Python: import math

n = int(input())
debt = 100000

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

print(debt)

Python: x = raw_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: money = 100000
unit = 1000
user = input()
n = int(user)
for i in range(n):
    money *= 1.05
    if money % unit != 0:
        money -= money % unit
        money += unit
print(str(int(money)))

Python: n = int(input())
now = 100000
week = 0
for week in range(n):
    calc = (int)(now * 0.05)
    now += (calc//1000)*1000
    if calc % 1000:
        now += 1000
print(now)

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

Python: import math

n=int(input())

a=100

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

Python: import math

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

print(x*1000)

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

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

Python: n=int(input())
money=100000
for i in range(n):
    money*=1.05
    if money%1000==0:
        pass
    else: 
        money=int(money//1000*1000+1000)
    i+=1
print(money)

Python: while True:
    try:
        print(int(round(100000 * (1.05 ** int(input())), -4)))
    except EOFError:
        break

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

Python: n = 10 ** 2
for i in range(int(input())) :
    n = float(n) * 1.05
    if n - int(n) > 0 : n = int(n) + 1
    else : n = int(n)
print(n * (10 ** 3))

Python: debt = 100000
n = int(input())
def debt_hell(debt):
    s=int(debt*1.05) 
    t=s//100 
    u=t%10
    if u>0:
        debt = (t//10+1)*1000
    else:
        debt = (t//10)*1000
    return debt

for i in range(n):
    debt=debt_hell(debt)
print(debt)

Python: n = int(input())
d = 100000
c = 1000
for i in range(n):
    d *= 1.05
    d =int(d/c+0.9)*c

print(d)

Python: # coding: utf-8
# Here your code !
import math

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

Python: import math

PAR = 0.05

sum = 100000
for i in range(int(input())):
    sum += math.ceil(sum * PAR / 1000) * 1000
print(sum)

Python: #借金を作る
i = 100000

#ループ回数を標準入力する
for _ in range(int(input())):
    
    #利息を加える
    i *= 1.05
    
    #切り上げがないとき以外1000より下を切り捨て1000を加える
    if i % 1000 != 0:
        i = i - (i % 1000) + 1000
        
#借金を出力する
print(int(i))

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

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

Python: import math

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

print(debt*1000)

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

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

Python: N = int(input())

def doround(n) :
    if n % 1000 > 0 :
        return (n // 1000) * 1000 + 1000
    else :
        return n
    
base = 100000
for i in range(N) :
    base *= 1.05
    base = doround(base)
    
print(int(base))

Python: import math
kane=100000
n=int(input())
for i in range (1,n+1):
    syaku=kane*1.05/1000
    kane=math.ceil(syaku)*1000
print(kane)

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: n=int(input())
a=100000
i=0
while i<n:
    a=(a/100)*105
    if a%1000!=0:
        a+=(1000-a%1000)
    i+=1
print(int(a))

Python: a = 100000
for i in range(int(input())):
    a += (int(a * 0.05) + 999) // 1000 * 1000
print(a)

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

Python: import math
price = 100000.0
n = int(raw_input())
for i in range(n):
    price = math.ceil((price * 1.05) / 1000) * 1000

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

Python: import math

if __name__ == '__main__':
    n = (int)(input())
    a = 100000
    for x in range(0,n):
        b = a*1.05
        c = math.ceil(b/1000)
        a = c*1000
    print(a)

Python: import math

n=int(input())
debt=0
for i in range(1,n+1):
 debt+=i+0.05*100000
 result=debt+100000
 result=math.ceil(result/1000)*1000
print(result)

Python: n=int(input())

z=100000

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

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: import math
def int_ceil(src, range):
    return int(math.ceil(src/float(range)) * range)

def main():
    week = int(input())
    debt = 100000
    for _ in range(week):
        risi = debt * 0.05
        debt = int_ceil(debt + risi, 1000)
    print(debt)

if __name__ == "__main__":
    main()