Problem:
 Score: 200 points    Problem Statement  Today, the memorable AtCoder Beginner Contest 100 takes place. On this occasion, Takahashi would like to give an integer to Ringo. As the name of the contest is AtCoder Beginner Contest 100, Ringo would be happy if he is given a positive integer that can be divided by 100  exactly  D times.  Find the N -th smallest integer that would make Ringo happy.      Constraints   D is 0 , 1 or 2 .  N is an integer between 1 and 100 (inclusive).         Input  Input is given from Standard Input in the following format:  D  N       Output  Print the N -th smallest integer that can be divided by 100 exactly D times.        Sample Input 1 0 5      Sample Output 1 5  The integers that can be divided by 100 exactly 0 times (that is, not divisible by 100 ) are as follows: 1 , 2 , 3 , 4 , 5 , 6 , 7 , ... Thus, the 5 -th smallest integer that would make Ringo happy is 5 .       Sample Input 2 1 11      Sample Output 2 1100  The integers that can be divided by 100 exactly once are as follows: 100 , 200 , 300 , 400 , 500 , 600 , 700 , 800 , 900 , 1 \ 000 , 1 \ 100 , ... Thus, the integer we are seeking is 1 \ 100 .       Sample Input 3 2 85      Sample Output 3 850000  The integers that can be divided by 100 exactly twice are as follows: 10 \ 000 , 20 \ 000 , 30 \ 000 , ... Thus, the integer we are seeking is 850 \ 000 .

Solution (Python):

def getDevide100Count(num: int):
    n = 0
    while num % 100 == 0:
        num = num / 100 
        n += 1
    return n


d, n = map(int, input().split())
count = 0
i = 0
while count != n:
    i += 1
    if getDevide100Count(i) == d:
        count += 1

print(i)

Solution (Python):
d, n = map(int, input().split())
if n == 100:
    n += 1
print(100 ** d * n)

Solution (Python):
d,n = map(int, raw_input().split())
print (n + (1 if n == 100 else 0)) * (100 ** d)

Solution (Python):
d,n=map(int,input().split())
num=100**d
if n==100:
    print(num*101)
else:
    print(num*n)

Solution (Python):
d, n = map(int, input().split())
count = 0
i = 1

while True:
    c = 0
    num = i
    while num >= 100:
        if num%100==0:
            num = num//100
            c += 1
        else:
            break
    if c==d:
        count += 1
    if count == n:
        print(i)
        break
    i += 1

Solution (Python):
def main():
    d, n = map(int,input().split())
    print((100**d)*(n+n//100))

if __name__ == '__main__':
    main()

Solution (Python):
D, N = map(int, input().split())
N = N if N != 100 else 101
print(N*(100**D))

Solution (Python):
MM = input().split()
D = int(MM[0])
N = int(MM[1])
if N ==100:
  ans = 100**D*(N+1)
else:
  ans = 100**D *N
print(ans)

Solution (Python):
a,b = map(int,input().split())
if b == 100:
    b = 101
print(100 ** a * b)

Solution (Python):
d, n = map(int, input().split())

if n == 100:
  n = 101
print(str(n) + ('00' * d))

Solution (Python):
d,n = map(int, input().split())
if d==0:
    if n!=100:
        print(1*n)
    else:
        print(101)
else:
    if n!=100:
        print(100**d*n)
    else:
        print(100**d*n+100**d)

Solution (Python):
d,n = map(int,input().split())
ans = n
if d != 0:
    ans *= 100**d

if n == 100:
    ans += 100**d

print(ans)

Solution (Python):
d,n = map(int,input().split())

if d == 0:
    if n == 100:
        print(101)
    else:
        print(n)
else:
    tmp = 100**d
    if n == 100:
        print(101*tmp)
    else:
        print(tmp*n)

Solution (Python):
D, N = map(int, input().split())
if N != 100:
  print(100**D*N)
else:
  print(100**D*101)

Solution (Python):
d,n=map(int,input().split())

if n == 100:
    a=101*100**d
else:
    a=100**d*n

print(a)

Solution (Python):
D, N = map(int, input().split())
if N == 100:
    print('101'+D*'00')
else:
    print(str(N)+D*'00')

Solution (Python):
d, n = map(int, input().split())
a = 100 ** d
counter = 0
for i in range(1,111) :
    num = a * i
    if i % 100 != 0 :
        counter += 1
        if counter == n :
            print(num)
            break

Solution (Python):
D,N = map(int,input().split())
if D == 0:
    if N != 100:
        print(N)
    else:
        print(101)
    exit()
if D == 1:
    if N != 100:
        print(N*100)
    else:
        print(10100)
    exit()
if N != 100:
    print(N*10000)
else:
    print(1010000)

Solution (Python):
D, N = map(int, input().split())
print([100 ** D * i for i in range(102) if i%100 != 0][N-1])

Solution (Python):
D,N = map(int,input().split())
if N==100:
    print(101*pow(100,D))
else:
    print(N*pow(100,D))

Solution (Python):
d, n = map(int, input().split())

if n == 100: n += 1
ans = n*100**(d)
print(ans)

Solution (Python):
d,n = map(int,input().split())
ans = (100**d)*n
if n == 100:
    ans = (100**d)*101
print(ans)

Solution (Python):

D, N = map(int, input().split())

if N < 100:
	print(100 ** D * N)
else:
	print(100 ** D * (N + 1))

Solution (Python):
d, n = map(int, input().split())





start = 100 ** d





value = start
count = 1
while True:
    
    if n == count:
        break
    
    value += start
    if d == 0:
        if value % 100 != 0:
            count += 1
    elif d == 1:
        if value % 10000 != 0:
            count += 1
    elif d == 2:
        if value % 1000000 != 0:
            count += 1
    else:
        count += 1
    
print(value)

Solution (Python):
d,n=map(int,input().split())
if n==100:
  n=101
if d==0:
  print(n)
else:
  print(n*100**d)

Solution (Python):
a,b=map(int,input().split())
res = 0
if a == 0:
  if b == 100:
    res = 101
  else:
    res = b
elif a == 1:
  if b == 100:
    res = 10100
  else:
    res =100*b
else:
  if b == 100:
    res = 1010000
  else:
    res =10000*b
print(res)

Solution (Python):
D, N = map(int, input().split())

lst = []
X = "00" * D

for i in range(1,102):
    if i % 100 == 0:
        pass
    else:
        lst.append(str(i) + X)

print(lst[N-1])

Solution (Python):
d, n = map(int, input().split())
ans = 100**d*n
if ans % 100**(d+1) == 0:
    ans += 100**d
print(ans)

Solution (Python):
d, n = map(int, input().split())
ans = 100**d*n
if ans % 100**(d+1) == 0:
    ans += 100**d
print(ans)

Solution (Python):
D,N = map(int,input().split())

if N != 100:
    print(N*pow(100,D))
else:
    print(101*pow(100,D))

Solution (Python):
D,N=map(int,input().split())
ans=0
if N!=100:
	ans=N*100**D
else:
	ans=101*100**D

print(ans)

Solution (Python):
D, N = map(int, input().split())
if N ==100:
    ans = (N+1) * (100**D)
else:
    ans=N * (100**D)
print(ans)

Solution (Python):
D,N = (int(X) for X in input().split())
if N==100: print((N+1)*pow(100,D))
else: print(N*pow(100,D))

Solution (Python):
D, N = map(int, input().split())
if N == 100:
    print((N+1)*(100**D))
else:
    print(N*(100)**D)

Solution (Python):


D, N = map(int, input().split())

if (100 ** D * N) / 100 != 100 ** D:
    print(100 ** D * N)
else:
    print((100 ** D * N) + (100 ** D))

Solution (Python):
d,n = map(int,input().split())
print(n*100**d if n != 100 else 101*100**d)

Solution (Python):
D,N=map(int,input().split())
print(100**D*(N+1) if N==100 else 100**D*N)

Solution (Python):
d, n = map(int, input().split())

if n==100:
    ans = 100**d * (n+1)
else:
    ans = 100**d * n

print(ans)

Solution (Python):
D, N = list(map(int, input().split()))
if D == 0:
    if N == 100:
        print(101)
    else:
        print(N)
elif D == 1:
    if N == 100:
        print(100 * 101)
    else:
        print(100 * N)
else:
    if N == 100:
        print(10000 * 101)
    else:
        print(10000 * N)

Solution (Python):
d, n = [int(w) for w in input().split()]

if n == 100:
    n = 101
print(100**d*n)

Solution (Python):
D,N = map(int,input().split())
ans = 0

if D == 0 and N !=100:
  print(N)
  
elif D == 0 and N == 100:
  print(101)
  
elif D == 1 and N !=100:
  print(N*100)
  
elif D == 1 and N == 100:
  print(10100)
  
elif D == 2 and N != 100:
  print(N*10000)
  
else:
  print(1010000)

Solution (Python):
d,n = map(int, input().split())

if n == 100: print(100**d*101)
else: print(100**d*n)

Solution (Python):
import math
def main():
  d,n = list(map(int,input().split()))
  if n==100:
    n+=1
  print(pow(100,d)*n)
main()

Solution (Python):
def solve():
    D, N = map(int, input().split())
    if N == 100:
        print(100 ** D * 101)
    else:
        print(100 ** D * N)


if __name__ == "__main__":
    solve()

Solution (Python):
D,N = [int(i) for i in input().split()]
print(N*100**D if N != 100 else (N+1)*100**D)

Solution (Python):
d, n = map(int, input().split())
if n == 100:
    print(101*100**d)
else:
    print(n*100**d)

Solution (Python):
d, n = map(int, input().split())
ans = (100**d)*n
if n == 100:
  ans += 100**d
print(ans)

Solution (Python):

d, n = map(int, input().split())
print((n + (n == 100)) * 100**d)

Solution (Python):
import itertools
import sys
input = sys.stdin.readline

D, N = map(int, input().split())

n = 0
for i in itertools.count(0):
    for j in range(1, 100):
        n += 1
        if n == N:
            ans = (100 * i + j) * 100**D
            print(ans)
            break
    else:
        continue
    break

Solution (Python):

import sys
from collections import defaultdict, deque



def check(d, x):
    c = 0
    while x % 100 == 0:
        x //= 100
        c += 1
    return c == d

def solve():
    d, n = [int(x) for x in input().split()]
    cnt = 0
    val = 0
    while cnt < n:
        val += 1
        if check(d, val): cnt += 1
    print(val)


t = 1

for case in range(1,t+1):
    ans = solve()

"""

"""

Solution (Python):
d, n = map(int, input().split())
if n == 100:
    print(max(100 ** d, 1) * n + 100**d)
else:
    print(max(100 ** d, 1) * n)

Solution (Python):
d,n=map(int,input().split());print(((n==100)+n)*100**d)

Solution (Python):
d, n = map(int, input().split())
if n == 100:
    n += 1
print(100 ** d * n)

Solution (Python):
d,n = map(int,input().split())

if n == 100:
    print(100 ** d * n + 100 ** d)
else:
    print(100 ** d * n)

Solution (Python):
D,N=map(int,input().split())

B=100**D
I=0
A=0
while I<N:
    A+=B
    if (A//B)%100:
        I+=1
print(A)

Solution (Python):
d,n=map(int,input().split())
if n==100:
  print(100**(d+1)+100**d)
else:
  print(100**d*n)

Solution (Python):
D, N = map(int, input().split())
if N != 100:
    print(N*100**D)
else:
    print(100**(D+1)+100**(D))

Solution (Python):
import sys, os, math, bisect, itertools, collections, heapq, queue

from decimal import Decimal
from collections import defaultdict, deque

sys.setrecursionlimit(10000000)

ii = lambda: int(sys.stdin.buffer.readline().rstrip())
il = lambda: list(map(int, sys.stdin.buffer.readline().split()))
fl = lambda: list(map(float, sys.stdin.buffer.readline().split()))
iln = lambda n: [int(sys.stdin.buffer.readline().rstrip()) for _ in range(n)]

iss = lambda: sys.stdin.buffer.readline().decode().rstrip()
sl = lambda: list(map(str, sys.stdin.buffer.readline().decode().split()))
isn = lambda n: [sys.stdin.buffer.readline().decode().rstrip() for _ in range(n)]

lcm = lambda x, y: (x * y) // math.gcd(x, y)

MOD = 10 ** 9 + 7
MAX = float('inf')


def main():
    if os.getenv("LOCAL"):
        sys.stdin = open("input.txt", "r")

    D, N = il()
    if N == 100:
        N += 1
    print(100 ** D * N)


if __name__ == '__main__':
    main()

Solution (Python):
import sys
input = sys.stdin.readline


D,N = list(map(int,input().split()))
if N == 100:
    N += 1
print(100**D*N)

Solution (Python):
import sys

def I(): return int(sys.stdin.readline())
def MI(): return map(int, sys.stdin.readline().split())
def LI(): return list(map(int, sys.stdin.readline().split()))
def main():
    d, n = MI()
    if n%100 == 0:
        n += 1
    ans = (100**d)*n
    print(ans)

if __name__ == '__main__':
    main()

Solution (Python):
D, N = map(int, input().split())
if N == 100:
    N = 101
if D == 0:
    print(N)
elif D == 1:
    print(N*100)
else:
    print(N*10000)

Solution (Python):
D, N = map(int, input().split())
print(101 * 100**D if N == 100 else N * 100**D)

Solution (Python):
d,n = map(int,input().split())
if n == 100:
    print(pow(100,d)*101)
else:
    print(pow(100,d)*n)

Solution (Python):
d,n=map(int,input().split())
if n==100:
    n+=1
print(n*(100**d))

Solution (Python):
D, N = map(int, input().split())

if N == 100:
    N += 1
print(100**D * N)

Solution (Python):
d,n = list(map(int, input().split()))
if n == 100:
    n+=1
print(100**d * n)

Solution (Python):
import sys, re
from math import ceil, floor, sqrt, pi, factorial, gcd
from copy import deepcopy
from collections import Counter, deque
from heapq import heapify, heappop, heappush
from itertools import accumulate, product, combinations, combinations_with_replacement
from bisect import bisect, bisect_left, bisect_right
from functools import reduce
from decimal import Decimal, getcontext

def i_input(): return int(input())
def i_map(): return map(int, input().split())
def i_list(): return list(i_map())
def i_row(N): return [i_input() for _ in range(N)]
def i_row_list(N): return [i_list() for _ in range(N)]
def s_input(): return input()
def s_map(): return input().split()
def s_list(): return list(s_map())
def s_row(N): return [s_input for _ in range(N)]
def s_row_list(N): return [s_list() for _ in range(N)]
def lcm(a, b): return a * b // gcd(a, b)
sys.setrecursionlimit(10 ** 6)
INF = float('inf')
MOD = 10 ** 9 + 7
num_list = []
str_list = []

def main():
    d, n = i_map()

    if d == 0:
        if n == 100:
            print(101)
        else:
            print(n)
        exit()

    if n == 100:
        if d == 1:
            print(10100)
        elif d == 2:
            print(1010000)
        exit()

    print(pow(100, d) * n)

if __name__ == '__main__':
    main()

Solution (Python):
d, n = map(int, input().split())
x = 100 **d
if n != 100:
    print(x*n)
else:
    print(x*(n +1))

Solution (Python):
d,n=map(int, input().split())
print(n*(100**d) if n<100 else 101*(100**d))

Solution (Python):
D, N = map(int, input().split())

D = 100 ** D
if N<= 99:
    print(D*N)
else:
    print(D*101)

Solution (Python):
D, N = map(int, input().split())

if N <= 99:
    print(100 ** D * N)
else:
    print(100 ** D * 101)

Solution (Python):
d,n = map(int, input().split())
if (n != 100):
    print((100**d) * n)
else:
    print((100**d)*101)

Solution (Python):
d,n=map(int,input().split())
if n==100:
    ans=101*100**d
else:
    ans=n*100**d
print(ans)

Solution (Python):
def resolve():
    D, N = list(map(int, input().split()))
    ls = [100 ** D * i for i in range(1, 100)]
    ls.append(100 ** D * 101)
    print(ls[N-1])
    return

resolve()

Solution (Python):
d, n = [int(i) for i in input().split()]
x = 100**d
y = 101 if n == 100 else n
print(x*y)

Solution (Python):
D,N = map(int,input().split())
if N==100:
  N+=1
print(100**D*N)

Solution (Python):
import sys
sys.setrecursionlimit(10000000)
MOD = 10 ** 9 + 7
INF = 10 ** 15

def main():
    D,N = map(int,input().split())
    if N != 100:
        ans = N * pow(100,D)
    else:
        ans = 101 * pow(100,D)
    print(ans)
if __name__ == '__main__':
    main()

Solution (Python):
d,n=map(int,input().split())
if n!=100:
    print(n*(100**d))
else:
    print(101*(100**d))

Solution (Python):
D,N=map(int,input().split())
if N!=100:
    print(N*(100**D))
else:
    print((N+1)*(100**D))

Solution (Python):

d, n = map(int, input().split())
if n == 100:
    print((n+1)*(100**d))
else:
    print(n*(100**d))

Solution (Python):
from collections import defaultdict
def readInt():
  return int(input())
def readInts():
  return list(map(int, input().split()))
def readChar():
  return input()
def readChars():
  return input().split()

d,n = readInts()

if d==0:
  if n==100:
    print(101)
  else:
    print(n)
elif d==1:
  if n==100:
    print(10100)
  else:
    print(n*100)
else:
  if n==100:
    print(1010000)
  else:
    print(n*10000)

Solution (Python):
D,N = map(int,input().split())
if N == 100:

    N = 101
print(100**D*N)

Solution (Python):
D, N = map(int, input().split())
if N != 100:
    Ans = N*(100**D)
else:
    Ans = 101*(100**D)
print(Ans)

Solution (Python):
d, n = map(int, input().split())
if n == 100:
  print(str(101) + ('00' * d))
else:
  print(str(n) + ('00' * d))

Solution (Python):
D, N = map(int, input().split())
ans = 0
df = 0

if D == 0:
    df = 1
elif D == 1:
    df = 100**1
else:
    df = 100**2

if N < 100:
    ans = df * N
else:
    ans = df * (N+1)

print(ans)

Solution (Python):
d,n = map(int,input().split())

x = 100**d
if n == 100:
    print(x*(n+1))
else:
    print(x*n)

Solution (Python):
def actual(D, N):
    if N == 100:
        return (100 ** D) * N + (100 ** D)

    return (100 ** D) * N

D, N = map(int, input().split())
print(actual(D, N))

Solution (Python):
d, n = map(int, input().split())

t = 100**d

if n == 100:
    print(t*(n+1))
else:
    print(t*n)

Solution (Python):
D,N=map(int,input().split())
p=0
if N==100:
  print(pow(100,D+1)+pow(100,D))
else:
  print(pow(100,D)*N)

Solution (Python):
import sys
def input(): return sys.stdin.readline().strip()


def main():
    D, N = map(int, input().split())
    cnt = 0
    n = 1
    while cnt < N:
        if n % (100**D) == 0 and n % (100**(D + 1)) != 0: cnt += 1
        n += 1
        if cnt == N: print(n - 1)

if __name__ == "__main__":
    main()

Solution (Python):
d,n=map(int,input().split())
print((n+1)*(100**d) if n==100 else n*(100**d))

Solution (Python):
d, n = map(int, input().split())
def culc(x):
    if x % 100 != 0:
        return 0
    else:
        cnt = 0
        while x % 100 == 0:
            x //= 100
            cnt +=1
        return cnt            

count = 0

for i in range(1, 1010001):
    if culc(i) == d:
        count += 1
    if count == n:
        print(i)
        break

Solution (Python):
d, n = map(int, input().split())
if d == 0:
    count = 0
    for i in range(1, 110):
        if i % 100 != 0:
            count += 1
            if count == n:
                print(i)
                break
        else:
            continue
        

if d == 1:
    count = 0
    for i in range(100, 20000, 100):
        if i % 100 == 0 and i % 10000 != 0:
            count+=1
            if count == n:
                print(i)
                break
        else:
            continue
        

if d == 2:
    count = 0
    for i in range(10000, 2000000, 10000):
        if i % 10000 == 0 and i % 1000000 != 0:
            count+=1
            if count == n:
                print(i)
                break
        else:
            continue

Solution (Python):






D,N = map(int, input().split())





if N != 100:
    print(N*(100**D))
elif N == 100:
    print((N+1)*100**D)

Solution (Python):
d, n = map(int, input().split())
if n == 100:
  n += 1
print((100**d)*n)

Solution (Python):
D, N=map(int, input().split())
a=0
if N==100:
  a=100**D
print((100**D)*N+a)

Solution (Python):
d,n=map(int,input().split())
if n!=100:
    print(n*(100**d))
elif n==100:
    print((n+1)*100**d)

Solution (Python):
import numpy as np
 
d,n = map(int, input().split())
if(not(n==100)):
  if(d==0):
    print(n)
  elif(d==1):
    print(100*n)
  else:
    print(10000*n)
else:
  if(d==0):
    print(101)
  elif(d==1):
    print(10100)
  else:
    print(1010000)

Solution (Python):
def resolve():
    D, N = [int(i) for i in input().split()]
    print(100**D * (N + (N // 100)))


resolve()

Solution (Python):
D,N = map(int, input().split())

a = 0  
if N==100: N=101
print(N*pow(100,D) + a)

Solution (Python):
from itertools import permutations

def mi():
    return map(int, input().split())

def ii():
    return int(input())

def main():
    D, N = mi()
    if N == 100:
        print(100**D*101)
    else:
        print(100**D*N)

if __name__ == '__main__':
    main()

Solution (Python):
import sys
import math
import itertools
from copy import copy
from collections import deque,Counter
from decimal import Decimal
def s(): return input()
def i(): return int(input())
def S(): return input().split()
def I(): return map(int,input().split())
def L(): return list(input().split())
def l(): return list(map(int,input().split()))
def lcm(a,b): return a*b//math.gcd(a,b)
sys.setrecursionlimit(10 ** 9)
mod = 10**9+7

D,N = I()
if D == 0:
    if N == 100:
        print(101)
    else:
        print(N)
elif D == 1:
    if N == 100:
        print(10100)
    else:
        print(N*100)
else:
    if N == 100:
        print(1010000)
    else:
        print(N*10000)

Solution (Python):
import sys
import math
import itertools
from copy import copy
from collections import deque,Counter
from decimal import Decimal
def s(): return input()
def i(): return int(input())
def S(): return input().split()
def I(): return map(int,input().split())
def L(): return list(input().split())
def l(): return list(map(int,input().split()))
def lcm(a,b): return a*b//math.gcd(a,b)
sys.setrecursionlimit(10 ** 9)
mod = 10**9+7

D,N = I()
if D == 0:
    if N == 100:
        print(101)
    else:
        print(N)
elif D == 1:
    if N == 100:
        print(10100)
    else:
        print(N*100)
else:
    if N == 100:
        print(1010000)
    else:
        print(N*10000)

Solution (Python):
d, n = map(int, input().split())
if n < 100:
  ans = n * 100**d
  print(ans)
else:
  ans = 101 * 100**d
  print(ans)

Solution (Python):
D,N=map(int,input().split())
if N<100:
  print(str(N)+str(0)*(D*2))
else:
  print(int(str(N)+str(0)*(D*2))+int(str(1)+str(0)*(D*2)))

Solution (Python):
D,N=map(int,input().split())
temp=100**D
if N<=99:
  print(temp*N)
else:
  print(temp*101)

Solution (Python):
d,n=map(int,input().split())
if n==100:
    n=101
print(100**d*n)

Solution (Python):
d,n=map(int,input().split())
if d==0:
    if n==100:
        print(101)
    else:
        print(n)
elif d==1:
    if n==100:
        print(10100)
    else:
        print(n*100)
else:
    if n==100:
        print(1010000)
    else:
        print(n*10000)

Solution (Python):
D, N = map(int, input().split())
print(int(str(N) + '00' * D) if N != 100 else int(str(N + 1) + '00' * D))

Solution (Python):
d, n = map(int, input().split())
if n == 100:
    n += 1
print(100**d*n)

Solution (Python):
D, N = map(int, input().split())

if N == 100:
    print(100**D*N+100**D)
else:
    print(100**D*N)

Solution (Python):
import math
import string
import collections
from collections import Counter
from collections import deque
from decimal import Decimal
import sys
import fractions


def readints():
    return list(map(int, input().split()))


def nCr(n, r):
    return math.factorial(n)//(math.factorial(n-r)*math.factorial(r))


def has_duplicates2(seq):
    seen = []
    for item in seq:
        if not(item in seen):
            seen.append(item)
    return len(seq) != len(seen)


def divisor(n):
    divisor = []
    for i in range(1, n+1):
        if n % i == 0:
            divisor.append(i)
    return divisor



dx = [-1, -1, -1, 0, 0, 1, 1, 1]
dy = [-1, 0, 1, -1, 1, -1, 0, 1]
d, n = map(int, input().split())
if d == 0:
    cnt = 0
    for i in range(10**10):
        if i % 100 != 0:
            cnt += 1
            if cnt == n:
                print(i)
                exit()
if d == 1:
    if n == 100:
        print(101*100)
        exit()
    cnt = 0
    for i in range(100, 10**12):
        if i % 100 == 0:
            cnt += 1
            if cnt == n:
                print(i)
                exit()

if d == 2:
    if n == 100:
        print(101*100*100)
        exit()
    cnt = 0
    for i in range(10000, 10**12):
        if i % 10000 == 0:
            cnt += 1
            if cnt == n:
                print(i)
                exit()

Solution (Python):
d, n = map(int, input().split())

cnt = 0
if d == 1:
    for i in range(1, 100**3 + 1):
        if i % 100 ** 1 == 0 and i % 100 ** 2 != 0:
            cnt += 1
        if cnt == n:
            print(i)
            exit()
elif d == 2:
    for i in range(1, 100 ** 4):
        if i % 100 ** 2 == 0 and i % 100 ** 3 != 0:
            cnt += 1
        if cnt == n:
            print(i)
            exit()
else:
    for i in range(1, 100**3+1):
        if i % 100 != 0:
            cnt += 1
        if cnt == n:
            print(i)
            exit()

Solution (Python):
D, N = map(int, input().split())
ans = N*100**D
if N == 100:
  ans = 101*100**D
print(ans)

Solution (Python):
d, n = map(int, input().split())
if n == 100:
    print(101*100**d)
else:
    print(100**d*n)

Solution (Python):
n,m=map(int,input().split())
if m==100:
    m=101
print((100**n)*m)

Solution (Python):
d, n = map(int,input().split())
print(100**d * n) if n < 100 else print(100**d * (n+1))

Solution (Python):
D, N = map(int, input().split())

if (N == 100):
    print((N * (100 ** D)) + 100**D)
else:
    print(N * (100 ** D))

Solution (Python):
d, n = map(int, input().split())
if n != 100:
  print((100 ** d) * n)
else:
  print((100 ** d) * (n + 1))

Solution (Python):
d,n = map(int,input().split())
if n == 100:
  print(101*(100**d))
  exit()
  
if d == 0:
  print(n)
elif d == 1:
  print(100*n)
else:
  print(10000*n)

Solution (Python):
d,n = map(int,input().split())
case = 100**d
if n < 100:
    print(case*n)
else:
    print(101*case)

Solution (Python):
d,n=map(int,input().split())
if n==100:
  n+=1
print(str(n)+"00"*d)

Solution (Python):
d, n = list(map(int,input().split()))
if n != 100:
    print((100**d)*n)
else:
    print(101*(100**d))

Solution (Python):
D, N =map(int, input().split())
if N != 100:
  print(100**D*N)
else:
  print(100**D*101)

Solution (Python):
d, n = (int(i) for i in input().split())
ans = 100**d
add = ans
for i in range(n-1):
    ans += add
    if ans / (100**d) % 100 == 0:
        ans += add
print(ans)

Solution (Python):
D,N = map(int,input().split())
A = [int(i) for i in range(1,100)] + [101]
B = [int(i*100) for i in range(1,100)] + [10100]
C = [int(i*10000) for i in range(1,100)] + [1010000]

if D == 0:
	print(A[N-1])
elif D == 1:
	print(B[N-1])
else:
	print(C[N-1])

Solution (Python):
D, N = map(int, input().split())
if N != 100:
    print(100**D * N)
else:
    print(100**D * 101)

Solution (Python):
d,n = map(int, input().split())
if n < 100:
    x = n * 100 ** d
else:
    x = 101 * 100 ** d
print(x)

Solution (Python):
d,n = map(int,input().split())
print ((100**d)*n) if n != 100 else print ((100**d)*101)

Solution (Python):
d,n = map(int,input().split())
if n != 100:
    print(100**d*n)
else:
    print(100**d*101)

Solution (Python):
d,n = map(int, input().split())

if n == 100:
  print(101 * (100**d))
else:
  print(n * (100**d))

Solution (Python):
d, n = map(int, input().split())

if n < 100:
    print(n * 100 ** d)
else:
    print(101 * 100 ** d)

Solution (Python):
D,N = map(int,input().split())
if N != 100:
    print(100**D*N)
else:
    print(100**D*101)

Solution (Python):
d, n = map(int, input().split())
arr = []
i = 1
while len(arr) != n:
  if 100 ** d * i % 100 ** (d + 1) != 0:
    arr.append(100 ** d * i)
  i += 1
print(arr[-1])

Solution (Python):
d,n = map(int,input().split())
if n == 100:
    print(101 * 100**d)
else:
    print(n * 100**d)

Solution (Python):
d,n=map(int, input().split())
if n != 100:
    print(n*100**d)
else:
    print(101*100**d)

Solution (Python):
d,n=map(int,input().split())
if n==100:
  n=101
print(100**d*n)

Solution (Python):
d,n = map(int,input().split())
if n == 100:
    print(101 * 100**d)
else:
    print(n * 100**d)

Solution (Python):
d,n = map(int,input().split())
a = 100**d
if n != 100:
    print(a*n)
else:
    print(a*(n+1))

Solution (Python):
d,n=map(int,input().split())
k=100**d
if n%100==0:
  n+=n//100
ans=n*k

print(ans)

Solution (Python):

d,n=map(int,input().split())



if n==100:
    print(101*(100**d))
else:
    print(n*(100**d))

Solution (Python):
def main():
    d,n = map(int, input().split())
    if n == 100:
        print((100**d) * (n+1)) 
    else:
        print((100**d) * n)  
if __name__ == '__main__':
    main()

Solution (Python):
D, N = map(int, input().split())
print((100**D)*N if N < 100 else (100**D)*101)

Solution (Python):
d,n=map(int,input().split())
if d==0 and n==100:
  print(101)
elif d==1 and n==100:
  print(10100)
elif d==2 and n==100:
  print(1010000)
else:
  print(n*(100**d))

Solution (Python):
A = []
B = []
C = []

for i in range(1,101):
    t0 = i
    t1 = i*100
    t2 = i*100*100
    A.append(t0)
    B.append(t1)
    C.append(t2)

d,n = map(int,input().split())

if d == 0:
    if n == 100:
        print(101)
    else:
        print(A[n-1])
elif d == 1:
    if n == 100:
        print(100*101)
    else:
        print(B[n-1])
else:
    if n == 100:
        print(100*100*101)
    else:
        print(C[n-1])

Solution (Python):
d,n = map(int,input().split())
li = []
for i in range(1,102):
    if i != 100:
        li.append(i*100**d)
print(li[n-1])

Solution (Python):
d,n = map(int,input().split())
li = []
for i in range(1,102):
    if i != 100:
        li.append(i*100**d)
print(li[n-1])

Solution (Python):
d,n=map(int, input().split())
if d == 0:
  if n < 100:
    print(n)
  else:
    print(101)
if d == 1:
  if n < 100:
    print(n*100)
  else:
    print(10100)
if d == 2:
  if n < 100:
    print(n*10000)
  else:
    print(1010000)

Solution (Python):
import sys

input = sys.stdin.readline


def main():
    D, N = map(int, input().split())

    if N == 100:
        ans = 100 ** D * (N + 1)
    else:
        ans = 100 ** D * N

    print(ans)


if __name__ == "__main__":
    main()

Solution (Python):
def main():
    D, N = map(int, input().split())

    if N < 100:
        print(100**D*N)
    else:
        print(100**D*101)


if __name__ == "__main__":
    main()

Solution (Python):
d, n = map(int, input().split())

ans = 0

if n == 100:
    print((n+1) * (100**d))
else:
    print(n * (100**d))

Solution (Python):
d,n = map(int,input().split())
if n == 100:
    print(100**d*(101))
else:
    print(100**d*n)

Solution (Python):

import sys
import numpy as np

sr = lambda: sys.stdin.readline().rstrip()
ir = lambda: int(sr())
lr = lambda: list(map(int, sr().split()))

D, N = lr()
if N == 100:
    N += 1
answer = 100 ** D * N
print(answer)

Solution (Python):
D, N = map(int, input().split())

count = 0
for i in range(1, 10 ** 7):
    tmp = i
    flag = True
    div_count = 0
    for j in range(3):
        if tmp%100 == 0:
            tmp = tmp // 100
            div_count += 1

    if div_count == D:
        count += 1

    if count == N:
        print(i)
        break

Solution (Python):

D, N = map(int, input().split())
if N != 100:
    print(100 ** D * N)
else:
    print(100 ** D * 101)

Solution (Python):
l = list(map(int, input().split()))
D = l[0]
N = l[1]
if N != 100:  
    answer = (100**D)*N
else:
    answer = (100**D)*(N+1)
print(answer)

Solution (Python):
ni = lambda: int(input())
nm = lambda: map(int, input().split())
nl = lambda: list(map(int, input().split()))

d,n = nm()

if n == 100:
  n+=1
ans = n*100**d
print(ans)

Solution (Python):
d, n = map(int, input().split())
if n == 100:
    print(101 * 100**d)
else:
    print(n * 100**d)

Solution (Python):
D,N=map(int,input().split())
print(100**D*N if N!=100 else 100**D*101)

Solution (Python):

d, n = map(int, input().split())
if d == 0:
    if n == 100:
        print(101)
    else:
        print(n)
elif d == 1:
    l = []
    if n == 100:
       print(10100)
    else:
        for i in range(1, 100):
            l.append(100 * i)
        print(l[n-1]) 
else:
    if n == 100:
        print(1010000)
    else:
        l = []
        for i in range(1, 101):
            l.append(100 * 100 * i)
        print(l[n-1])

Solution (Python):


D, N = map(int, input().split())
if N == 100:
  N += 1
print(N * 100 ** D)

Solution (Python):
D, N = map(int, input().split())
if N == 100:
    print(N * 100 ** D + 100 ** D)
else:
    print(N * 100 ** D)

Solution (Python):
d,n=map(int,input().split())
if n==100:
  print((100**d)*(n+1))
else:
  print((100**d)*n)

Solution (Python):
d, n = map(int, input().split())

if n == 100:
    print(100 ** d * (n+1))
    exit()
print(100 ** d * n)

Solution (Python):
d,n=list(map(int,input().split()))
print(100**d*(n+n//100))