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-----
0 5

-----Sample Output-----
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.

Difficulty: introductory

Starter code:

Solutions:
D, N = list(map(int, input().split()))

ans = 0
if D == 0:
    if N % 100 != 0:
        print(N)
    else:
        print((101))
elif D == 1:
    if N % 100 != 0:
        for i in range(N):
            ans += 100**D
        print(ans)
    else:
        for i in range(N):
            ans += 100**D
        print((ans + 100))
else:
    if N % 100 != 0:
        for i in range(N):
            ans += 100**D
        print(ans)
    else:
        for i in range(N):
            ans += 100**D
        print((ans + 10000))


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

def answer(d: int, n: int) -> int:
    if n == 100:
        n += 1
    return 100 ** d * n


def main():
    d, n = map(int, input().split())
    print(answer(d, n))


def __starting_point():
    main()
__starting_point()

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

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

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

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

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

D, N = list(map(int, input().split()))
if D == 0:
    if N <= 99:
        print(N)
    else:
        print((N + 1))
if D == 1:
    if N <= 99:
        print((N*100))
    else:
        print((N*100 + 100))
if D == 2:
    if N <= 99:
        print((N*10000))
    else:
        print((N*10000 + 10000))


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

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

print(X)

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

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

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





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

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


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


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

def get_input() -> tuple:
    """
    標準入力を取得する.

    Returns:\n
        tuple: 標準入力
    """
    # 標準入力を取得
    D, N = list(map(int, input().split()))

    return D, N


def main(D: int, N: int) -> None:
    """
    メイン処理.

    Args:\n
        D (int): 0, 1, or 2
        N (int): 整数(1 <= N <= 100)
    """
    # 求解処理
    ans = (N + (N // 100)) * 100**D

    # 結果出力
    print(ans)


def __starting_point():
    # 標準入力を取得
    D, N = get_input()

    # メイン処理
    main(D, N)

__starting_point()

l = list(map(int, input().split()))
if l[1] != 100:
    print((l[1]*100**l[0]))
else:
    print((101*100**l[0]))


d, n = list(map(int, input().split()))
start = 100 ** d
counter = 0
while True:
    if start % (100 ** d) == 0 and start % (100 ** (d + 1)) != 0:
        counter += 1
    if counter == n:
        print(start)
        break
    start += 1


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

D,N = map(int,input().split())
if D==0 and N<=99:
    print(1+N-1)
elif D==0 and N==100:
    print(101)
elif D==1 and N<=99:
    print(100*N)
elif D==1 and N==100:
    print(10100)
elif D==2 and N<=99:
    print(10000*N)
elif D==2 and N==100:
    print(10000*101)

a = input()
b = a.split()
d = int(b[0])
n = int(b[1])

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


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

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


D,N = map(int, input().split())
ans = (N+N//100)*100**D
print(ans)

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

import math,string,itertools,fractions,heapq,collections,re,array,bisect,sys,random,time,copy,functools
from collections import deque

sys.setrecursionlimit(10**7)
inf = 10**20
mod = 10**9 + 7

DR = [1, -1, 0, 0]
DC = [0, 0, 1, -1]

def LI(): return [int(x) for x in sys.stdin.readline().split()]
def LI_(): return [int(x)-1 for x in sys.stdin.readline().split()]
def LF(): return [float(x) for x in sys.stdin.readline().split()]
def LS(): return sys.stdin.readline().split()
def I(): return int(sys.stdin.readline())
def F(): return float(sys.stdin.readline())
def S(): return input()
     
def main():
    D, N = LI()
    cnt = 0
    num = 0
    for i in range(1, 10**7+1):
        if i % (100 ** D) == 0 and i % (100 ** (D+1)) > 0:
            cnt += 1
        if cnt == N:
            num = i
            break

    print(num)


main()



a,b=input().split()
a=int(a)
b=int(b)
if b<100:
  print((100**a)*b)
elif b==100:
  print((100**a)*(b+1))

n,m = [int(x) for x in input().split()]
if m != 100:
  print((100**n) * m) 
else:
  print((100**n) * (m+1))

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

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

count = 0
i = 1
while count<N:
    if (i%(100**(D+1)) != 0) and (i%(100**(D+2)) != 0) and (i%(100**D)) == 0:
        count += 1
    i += 1
print(i-1)            

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

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

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


d, n = list(map(int, input().split()))
start = 100 ** d
counter = 0
while True:
    if start % (100 ** d) == 0 and start % (100 ** (d + 1)) != 0:
        counter += 1
    if counter == n:
        print(start)
        break
    start += 100 ** d


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

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

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

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

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


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

d,n =map(int,input().split())
if n%100 != 0:
    ans = 100**d*n
else:
    ans = 100**d*101
print(ans)

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

if D == 0:
  for i in range(N):
    count += 1
  if N == 100:
    count += 1
  print(count)
elif D == 1:
  for i in range(N):
    count += 100
  if N == 100:
    count += 100
  print(count)
elif D == 2:
  for i in range(N):
    count += 10000
  if N == 100:
    count += 10000
  print(count)

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

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(100*n)
else:
    if n==100:
        print(1010000)
    else:
        print(10000*n)

import sys

input = sys.stdin.readline

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


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

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

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

import sys
import math
import itertools
import collections
import heapq
import re
import numpy as np
from functools import reduce

rr = lambda: sys.stdin.readline().rstrip()
rs = lambda: sys.stdin.readline().split()
ri = lambda: int(sys.stdin.readline())
rm = lambda: list(map(int, sys.stdin.readline().split()))
rf = lambda: list(map(float, sys.stdin.readline().split()))
rl = lambda: list(map(int, sys.stdin.readline().split()))
inf = float('inf')
mod = 10**9 + 7

d, n = rm()
if n != 100:
    print(((n - (n-1)//99)*100**d))
else:
    print((101 * 100**d))



#-*-coding:utf-8-*-
import sys
input=sys.stdin.readline

def main():
    d,n = map(int,input().split())

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

def __starting_point():
    main()
__starting_point()

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

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

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

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

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


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

D, N = list(map(int, input().split()))
if D > 0:
  if N < 100:
    print(( N * 100**D ))
  else:
    print(( 101 * 100**D ))
if D == 0:
  if N < 100:
    print(N)
  else:
    print((101))


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

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

#n = int(input())
d, n = list(map(int, input().split()))
#al = list(map(int, input().split()))
#al=[list(input()) for i in range(n)]

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


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

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

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

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


def solve(D, N):
    if N < 100:
        ans = 100**D * N
    else:
        ans = 100**D*101

    return ans


def __starting_point():
    D, N = list(map(int, input().split()))
    print((solve(D, N)))

__starting_point()

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

D,N=map(int,input().split())
l=[]

for i in range(1,1100000):
    if i%100**D==0 and i%100**(D+1)!=0:
        l.append(i)
print(l[N-1])

D, N = map(int, input().split())
'''
q = (N-1)//99
print((100*q + N - 99*q)* 100**D)
'''

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

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

D,N=map(int,input().split())
a=100**(D)
A=[]
for i in range(1,101):
    A.append(i*a)
if D==0:
    A.remove(100)
    A.append(101)
elif D==1:
    A.remove(10000)
    A.append(10100)
elif D==2:
    A.remove(1000000)
    A.append(1010000)
print(A[N-1])

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

a, b = list(map(int, input().split()))

if b != 100:
  ans = 100 ** a * b
else:
  ans = 100 ** a * (b+1)

print(ans)

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

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

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

ans = (100 ** D) * (N if N < 100 else 101)

print(ans)

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

a,b=list(map(int,input().split()))
if a==0 and b==100:
    print((101))
elif a==1 and b==100:
    print((10100))
elif a==2 and b==100:
    print((1010000))
else:
    print(((100**a)*b))


D, N = map(int, input().split())
if N != 100:
  if D == 0:
    print(N)
  elif D == 1:
    x = [100 * i for i in range(1, 101)]
    print(x[N-1])
  elif D == 2:
    x = [10000 * i for i in range(1, 101)]
    print(x[N-1])
else:
  if D == 0:
    print(101)
  elif D == 1:
    x = [100 * i for i in range(1, 101)]
    print(x[N-1]+100)
  elif D == 2:
    x = [10000 * i for i in range(1, 101)]
    print(x[N-1]+10000)

import sys
input = sys.stdin.readline

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

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

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

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

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

def main():
    d, n = list(map(int, input().split()))
    if d == 0:
        print(n + (n//100))
        return
    print((100 ** d) * (n + n // 100))


def __starting_point():
    main()
__starting_point()

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

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

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


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


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

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


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

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

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

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

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

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

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


# -*- coding: utf-8 -*-
# 標準入力を取得
D, N = list(map(int, input().split()))

# 求解処理
ans = (N + (N // 100)) * 100**D

# 結果出力
print(ans)


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

d,n=map(int,input().split())
if d==0:
    if n!=100:
        print(n)
    else:
        print(101)
else:
    a=[n]+[0]*(2**d)
    if n!=10**2:
        print(*a,sep="")
    else:
        a[-(2*d+1)]+=1
        print(*a,sep="")

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


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

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


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(100**2*100+10000)
  else: print(100**2*n)

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

def cal(x):
  if x % 100 != 0: return 0
  return cal(x/100) + 1

cnt = 0
tmp = 1
while True:
  if cal(tmp) == d:
    cnt += 1
  if cnt == n:
    break
  tmp += 1
print(tmp)

import sys
lines = [s.rstrip("\n") for s in sys.stdin.readlines()]
d, n = [int(num) for num in lines.pop(0).split(" ")]
if n == 100:
    n += 1
ans = (100 ** d) * n
print(ans)


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(100*n)
elif d == 2:
    if n == 100:
        print(1010000)
    else:
        print(10000*n)

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

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

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

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

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

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

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


def main():
    D, N = list(map(int, input().split()))
    if D == 0:
        if N <= 99:
            print(N)
        else:
            print((N+1))
    elif D == 1:
        if N <= 99:
            print((100*N))
        else:
            print((101*N))
    else:
        if N <= 99:
            print((10000*N))
        else:
            print((10100*N))

def __starting_point():
    main()

__starting_point()

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

a = input()
b = a.split()
d = int(b[0])
n = int(b[1])
if n==100:
  print(((100**d)*(n+1)))
else:
  print(((100**d)*n))


lst = input().split()
D = int(lst[0])
N = int(lst[1])

if N == 100:
   N += 1

print((100 ** D) * N)

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