Problem:
 Score : 200 points    Problem Statement Given are 1 -digit positive integers a and b . Consider these two strings: the concatenation of b copies of the digit a , and the concatenation of a copies of the digit b . Which of these is lexicographically smaller?      Constraints  1 \leq a \leq 9  1 \leq b \leq 9  a and b are integers.         Input Input is given from Standard Input in the following format:  a  b       Output Print the lexicographically smaller of the two strings. (If the two strings are equal, print one of them.)        Sample Input 1 4 3      Sample Output 1 3333  We have two strings 444 and 3333 . Between them, 3333 is the lexicographically smaller.       Sample Input 2 7 7      Sample Output 2 7777777

Solution (Python):

import sys

import fractions
import copy
import bisect
import math
import numpy as np
import itertools
from itertools import combinations_with_replacement


from operator import itemgetter
from sys import stdin

from operator import mul
from functools import reduce
from collections import Counter





j=0
k=0
n=3
r=1
a=[0]






"1行1つの整数を入力を取得し、整数と取得する"




"12 21 332 とか入力する時に使う"
"1行に複数の整数の入力を取得し、整数として扱う"

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

for i in number_list:
    print(number_list[i-1])

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'''
x=[]
y=[]
for i in range(N):
    x1, y1=[int(i) for i in input().split()]
    x.append(x1)
    y.append(y1)
print(x)
print(y)
"複数行に2数値を入力する形式 x座標とy座標を入力するイメージ"
'''

'''
mixlist=[]
for i in range(N):
    a,b=input().split()
    mixlist.append((int(a),b))
print(mixlist)
"複数行にintとstrを複合して入力するやつ，今回はリスト一つで処理している"
'''

'''



"正方行列にstr型の値を入力"
'''




'''
入力
1 2
4 5
7 8
出力結果
[[1, 2], [4, 5], [7, 8]]
'''
"列数に関して自由度の高いint型の値を入力するタイプの行列"


'''
table = [[int(i) for i in input().split()] for m in range(m)]

print(type(N))
print(N)
print(type(M))
print(M)

print(type(table))
print(table)
'''











'''
入力
1234
出力
1
[[1, 2, 3, 4]]
'''




'''
word_list= input().split(" ")
print(word_list[0])
"連続文字列の入力"
"qw er ty とかの入力に使う"
"入力すると空白で区切ったところでlistの番号が与えられる"
'''



'''
A, B, C=stdin.readline().rstrip().split()
print(A)
"リストではなく独立したstr型を入れるなら以下のやり方でOK"
'''




"aという変数に入っているものを大文字にして出力"

















'''
コンビネーションの組み合わせの中身を出力する形式
for i in itertools.combinations(brray, 2)
combinationsをpermutationsにすれば順列になる
今回なら(abc133B)
入力
1 2
5 5
-2 8
出力
[[1, 2], [5, 5], [-2, 8]]
もちろん一次元リストでも使えるし
何よりiもリストのように使えるので便利
'''


'''
def cmb(n,r):
    
    r= min(n-r,r)
    
    if r == 0: return 1
    over = reduce(mul, range(n, n-r, -1))
    
    
    

    under = reduce(mul, range(1, r+1))
    
    
    
    

    return over // under
    
    
    
    
a = cmb(n, r)

'''

'''
import itertools
from itertools import combinations_with_replacement

combinationについて
以下の違いを意識しよう
combinations() p, r 長さrのタプル列、ソートされた順で重複なし

combinations_with_replacement() p, r 長さrのタプル列、ソートされた順で重複あり


使用例 　　　　　　　　　　　                  出力　　
combinations('ABCD', 2)　　　　　　　　　　　　AB AC AD BC BD CD

combinations_with_replacement('ABCD', 2)　　 AA AB AC AD BB BC BD CC CD DD
'''



'''




for i in a.most_common(n):print(i)





 


'''









'''
bisect.bisect_left(a, x, lo=0, h=len(a))
引数
a: ソート済みリスト
x: 挿入したい値
lo: 探索範囲の下限
hi: 探索範囲の上限
(lo, hiはスライスと同様の指定方法)
bisect_leftはソートされたリストaに対して順序を保ったままxを挿入できる箇所を探索します。leftが示す通り、aにすでにxが存在している場合は、挿入箇所は既存のxよりも左側になります。また、lo, hiを指定することで探索範囲を絞り込むことも可能です。デフォルトはaの全体が探索対象です。
'''

'''
素数の判定
'''


def is_prime(n):
    if n == 1: return False

    for k in range(2, int(np.sqrt(n)) + 1):
        
        if n % k == 0:
            return False
            
    return True


'''
npのmaxとmaximumの違い
xs = np.array([1, -2, 3])
np.max(xs, 0)
この出力は3となります．[1, -2, 3]と0の4つの数字のうち，最も大きい値を出力します．

一方で，[max(1, 0), max(-2, 0), max(3, 0)]を出力したい時があります．
その時は，numpyのmaximum関数を用います．

xs = np.array([1, -2, 3])
np.maximum(xs, 0)  

'''

def factorial(x, mod=10**9+7):
    
    
    
    tmp = 1
    for i in range(1, x+1):
        tmp = (tmp * i) % mod
    return tmp
    '''
    Basically, when you do a**d % n, you actually have to calculate a**d, which could be quite large.
    But there are ways of computing a**d % n without having to compute a**d itself, and that is what pow does.
    '''











def main():

    steps=0
    state=0
    w=1
    j=0
    k=0
    
    a,b=map(int, input().split(" "))
    c=[]
    dic={}
    for i in range(b):
        c.append(str(a))
    s=''.join(c)
    

    dic['k1']=s
    s=''
    c=[]
    
    for i in range(a):
        c.append(str(b))
    s=''.join(c)
    dic['k2']=s
    dic2=sorted(dic.items(), key=lambda x:x[1])
    
    
    print(dic2[0][1])

    
    
    
    
    
    


    for i in range(1,n+1,2):
     pass
     

    l = ['aaa', 'bbb', 'ccc']

    
    
    

    
        
    
    

    
    
    
    
    DP = np.zeros(w+1, dtype=int)
    exdp=np.zeros((3,4)) 
    
    
    
        
        
    
    
        
        
    


    
    



    '''
    入力
    1234
    出力
    [1, 2, 3, 4]
    '''
    pin_l=["x" for i in range(10)]
    

    ls = ["a", "b", "c", "d", "e"]


    
    

    
    

    
    
    
    
    
    '''
    lsというリストの場合に、1つ飛びの値を取得したい場合には
    ls[::2]
    のようにします。こうすると、
    ["a", "c", "d"]と出力される
    '''

if __name__ == "__main__":
    main()

Solution (Python):
import math
import time
from collections import defaultdict, deque
from sys import stdin, stdout
from bisect import bisect_left, bisect_right
a,b=map(int,stdin.readline().split())
if(a<=b):
    print(str(a)*b)
else:
    print(str(b)*a)

Solution (Python):
a, b = map(int, input().split())
ans = ""
if a < b:
    for i in range(b):
        ans += str(a)
else:
    for i in range(a):
        ans += str(b)
print(ans)

Solution (Python):
a, b = map(int, input().split())
if a < b:
    ans = 0
    for i in range(b):
        ans = ans*10 + a
else:
    ans = 0
    for i in range(a):
        ans = ans*10 +b
print(ans)

Solution (Python):
a,b=map(int,input().split())
result=0
if a<=b:
  for i in range(0,b):
    result=result+a*10**i
  print(result)
  
else:
  for i in range(0,a):
    result=result+b*10**i
  print(result)

Solution (Python):
a,b=map(int,input().split())
if a>=b:
  c=str(b)*a
  print(c)
else:
  d=str(a)*b
  print(d)

Solution (Python):

a, b = map(int, input().split())
aa = str(a) * b
bb = str(b) * a
if a < b:
    print(aa)
else:
    print(bb)

Solution (Python):
a, b = map(int, input().split())
if str(a) * b < str(b) * a:
    print(str(a) * b )
else:
    print(str(b) * a)

Solution (Python):
a, b = map(int, input().split())

print(''.join([str(min(a, b)) for i in range(max(a, b))]))

Solution (Python):
from sys import stdin, setrecursionlimit


def main():
    input = stdin.buffer.readline
    a, b = map(int, input().split())
    print(str(a) * b) if a < b else print(str(b) * a)


if __name__ == "__main__":
    setrecursionlimit(10000)
    main()

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

if n > m :
  for i in range(n):
    print(m, end='')
else :
  for i in range(m):
    print(n, end='')

Solution (Python):
a, b = map(int, input().split())
ans = ''
if a < b:
    for i in range(b):
        ans += str(a)
else:
    for i in range(a):
        ans += str(b)

print(ans)

Solution (Python):
a,b = map(str,input().split())

A = a*int(b)
B = b*int(a)

if A >= B:
  print(B)
else:
  print(A)

Solution (Python):


a, b = map(int, input().split())
ab = str(a)*b
ba = str(b)*a
if ab > ba:
    print(ba)
else:
    print(ab)

Solution (Python):
a, b = map(int,input().split())
print(int(str(min(a, b)) * max(a, b)))

Solution (Python):
a, b = map(int, input().split())
m = str(a)*int(b)
n = str(b)*int(a)
l = [m, n]
l.sort()
print(l[0])

Solution (Python):
a,b=map(int,input().split())
li=[str(a)*b,str(b)*a]
li.sort()
print(li[0])

Solution (Python):
a,b=map(int,input().split())

mi=min(a,b)
ma=max(a,b)
ans=''
for i in range(ma):
    ans+=str(mi)
print(ans)

Solution (Python):
a, b = list(map(int, input().split()))
if a >= b:
    ans = str(b) * a
else:
    ans = str(a) * b
print(ans)

Solution (Python):
c,d=map(int,input().split())
s=1
a=max(c,d)
b=min(c,d)
for i in range(a-1):
    s=10*s+1
print(b*s)

Solution (Python):
a, b = input().split()

A = int(a * int(b))
B = int(b * int(a))

if A > B:
    print(A)
else:
    print(B)

Solution (Python):

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

A = [a] * int(b)
B = [b] * int(a)
ab = "".join(A)
ba = "".join(B)

if ab <= ba:
    print(ab)
else:
    print(ba)

Solution (Python):
a, b = input().split()
print(a*int(b) if int(a)<=int(b) else b*int(a))

Solution (Python):
a,b=map(str,input().split())

p=a*int(b)
q=b*int(a)
print(min(p,q))

Solution (Python):








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

if(n<m):
    c=chr(48+n)
    print(c*m)
else:
    c=chr(48+m)
    print(c*n)

Solution (Python):
a, b = input().split()
s = a * int(b)
t = b * int(a)
print(s if s < t else t)

Solution (Python):
a, b = map(int, input().split())
result = []
if a > b:
  result = [str(b) for i in range(a)]
else:
  result = [str(a) for i in range(b)]
print("".join(result))

Solution (Python):
a, b = map(int, input().split())

if a > b:
    print(str(b) * a)
else :
    print(str(a) * b)

Solution (Python):
a, b = input().split()
print(a*int(b) if a<=b else b*int(a))

Solution (Python):
import sys
import math
import bisect

def main():
    a, b = map(int, input().split())
    s1 = ''.join([chr(a + ord('0'))] * b)
    s2 = ''.join([chr(b + ord('0'))] * a)
    x = int(s1)
    y = int(s2)
    print(max(x, y))

if __name__ == "__main__":
    main()

Solution (Python):
a,b=map(int,input().split())
if a<=b:
    print(str(a)*b)
else:
    print(str(b)*a)

Solution (Python):
a, b = map(int, input().split())

A = str(a) * b
B = str(b) * a

if A < B:
    print(A)
else:
    print(B)

Solution (Python):
a,b = map(int, input().split())
if a > b:
  print(str(b)*a)
else:
  print(str(a)*b)

Solution (Python):
a, b = map(int, input().split(' '))

values = sorted([str(a) * b, str(b) * a])
print(values[0])

Solution (Python):
a, b = map(int, input().split())
ab = str(a) * b
ba = str(b) * a
print(ab if ab < ba else ba)

Solution (Python):
a_str, b_str = input().split()

a_int = int(a_str)
b_int = int(b_str)

if a_str*b_int >= b_str*a_int:
    print(b_str*a_int)
else:
    print(a_str*b_int)

Solution (Python):
a,b = (int(i) for i in input().split())
s1 = ""+a*str(b)
s2 = ""+b*str(a)
print(min(s1,s2))

Solution (Python):
a, b = input().split()
A = a * int(b)
B = b * int(a)
if A[0] < B[0]:
  print(A)
else:
  print(B)

Solution (Python):
a,b = map(int,input().split())
sa = str(a)*b
sb = str(b)*a
if (sa < sb):
	print(sa)
else:
	print(sb)

Solution (Python):
a,b = input().split()
if a * int(b) > b * int(a):
    print(b * int(a))
else:
    print(a * int(b))

Solution (Python):
a,b = map(int,input().split())

ab = str(a)*b
ba = str(b)*a

A = sorted([ab,ba])
print(A[0])

Solution (Python):
import fileinput

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

ab = str(a) * b
ba = str(b) * a

print(min(ab, ba))

Solution (Python):
a,b=list(map(str,input().split()))
A=a*int(b)
B=b*int(a)
print(int(sorted([A,B])[0]))

Solution (Python):
a, b = map(int, input().split())

aa = ''
bb = ''
for i in range(b):
    aa += str(a)

for j in range(a):
    bb += str(b)

if aa < bb:
    print(aa)
else:
    print(bb)

Solution (Python):
a, b = map(int, input().split())

if a <= b:
    aaa = str(a)*b
    print(aaa)

else:
    bbb = str(b)*a
    print(bbb)

Solution (Python):
a,b=map(int,input().split())

if a==b:
    print(str(a)*b)
else:
    if a<b:
        print(str(a)*b)
    else:
        print(str(b)*a)

Solution (Python):
a, b = map(int, input().split())
if a > b:
  for i in range(a):
    print(b, end='')
else:
  for i in range(b):
    print(a, end='')

Solution (Python):
a, b = map(int, input().split())
if a >= b:
    print(str(b) * a)
else:
    print(str(a) * b)

Solution (Python):
a, b = list(map(int,input().split()))
print(min(str(a)*b,str(b)*a))

Solution (Python):
a, b = map(int, input().split())
ab = str(a) * b
ba = str(b) * a
if ab > ba:
	print(ba)
else:
	print(ab)

Solution (Python):

"""
Created on Sat May  9 01:31:32 2020

@author: shinba
"""
a,b = map(int,input().split())

if a >= b:
    print("{}".format(b)*a)
else:
    print("{}".format(a)*b)

Solution (Python):
def solve():
    a, b = (input().split())
    c = (a *int(b))
    d = (b *int(a))
    if a <= b:
        print(c)
    else:
        print(d)


if __name__ == '__main__':
    solve()

Solution (Python):
a,b=map(int,input().split())
X=str(a)*b
Y=str(b)*a
print(X if a<=b else Y)

Solution (Python):
S = list(map(int,input().split()))

ans = ''
for _ in range(max(S)):
  ans += str(min(S))
  
print(ans)

Solution (Python):
a, b = list(map(int, input().split()))
ans = ''
if a <= b:
    for i in range(b):
        ans += '{}'.format(a)
else:
    for i in range(a):
        ans += '{}'.format(b)
print(ans)

Solution (Python):
a, b = input().split()
print(a*int(b) if a < b else b*int(a))

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

else:
    print((max([a,b]))*str(min([a,b])))

Solution (Python):
a, b = map(int, input().split())

A = str(a)*b
B = str(b)*a
print(sorted([A,B])[0])

Solution (Python):
a, b = map(int, input().split())
print(str(min(a, b)) * max(a, b))

Solution (Python):
a,b=map(int,input().split())
out=[]
if a <= b:
    for i in range(b):
        out.append(str(a))
    print("".join(out))
else:
    for i in range(a):
        out.append(str(b))
    print("".join(out))

Solution (Python):
a,b = map(str,input().split())

num = []
num.append(a * int(b)) 
num.append(b * int(a))
num.sort()
print(num[0])

Solution (Python):
a,b = map(int,input().split())
if a > b:
    a,b = b,a
S = [str(a) for i in range(b)]
print("".join(S))

Solution (Python):
a, b = input().split()
print(min(a*int(b), b*int(a)))

Solution (Python):
a, b = map(int, input().split())
a_list = [str(a)] * b
a_str = ''.join(a_list)

b_list = [str(b)] * a
b_str = ''.join(b_list)

list = [a_str, b_str]
list.sort(reverse=False)
print(list[0])

Solution (Python):
a,b=input().split()
s=a*int(b)
t=b*int(a)
l=[s,t]
l.sort()
print(l[0])

Solution (Python):
il = input().split()
a = il[0]
b = il[1]

a_fixed = a * int(b)
b_fixed = b * int(a)

result = [a_fixed , b_fixed]
result.sort()

print(result[0])

Solution (Python):
x = input().split()
a = ''
b = ''
for i in range(0, int(x[1])):
  a += x[0]
for i in range(0, int(x[0])):
  b += x[1]
if a > b:
  print(b)
else:
  print(a)

Solution (Python):
a, b = input().split()
a_S = a * int(b)
b_S = b * int(a)
print(a_S) if a_S < b_S else print(b_S)

Solution (Python):
a, b = map(int, input().split())
if a > b:
    b, a = a, b

print(str(a)*b)

Solution (Python):
a, b = input().split()
print(a * int(b) if a * int(b) < b * int(a) else b * int(a))

Solution (Python):
from collections import defaultdict, deque, Counter
from heapq import heappush, heappop
from itertools import permutations, accumulate
from math import sqrt, ceil, floor, factorial
from bisect import bisect_left, bisect_right
from copy import deepcopy
from operator import itemgetter
from fractions import gcd
import sys
def I(): return int(input())  
def Is(): return map(int, input().split())  
def LI(): return list(map(int, input().split()))  
def TI(): return tuple(map(int, input().split()))  
def IR(n): return [I() for _ in range(n)]
def LIR(n): return [LI() for _ in range(n)]
def TIR(n): return [TI() for _ in range(n)]
def S(): return input()
def Ss(): return input().split()  
def LS(): return list(input())  
def SR(n): return [S() for _ in range(n)]
def SsR(n): return [Ss() for _ in range(n)]
def LSR(n): return [LS() for _ in range(n)]
sys.setrecursionlimit(1000000)
MOD = 1000000007
INF = float('inf')

a, b = Is()
if str(a)*b > str(b)*a:
    print(str(b)*a)
else:
    print(str(a)*b)

Solution (Python):
a, b = map(int, input().split())
A = str(a) * b
B = str(b) * a
d = {A, B}
print(sorted(d)[0])

Solution (Python):

a, b = input().split()
print(a*int(b) if a<b else b*int(a))

Solution (Python):


a, b = map(int, input().split())
A = str(a) * b
B = str(b) * a
print(A if A <= B else B)

Solution (Python):
ab = list(map(int,input().split()))
print(max(ab)*str(min(ab)))

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

ans = 0
if a <= b:
    for i in range(b):
        ans += a*10**i
else:
    for i in range(a):
        ans += b*10**i

print(ans)

Solution (Python):
a,b = map(int, input().split())

for i in range(max(a,b)):
  print(min(a,b), end="")

Solution (Python):
i, j = map(int, input().split())

a = str(i) * j
b = str(j) * i

if a < b:
    print(a)
else:
    print(b)

Solution (Python):
a, b = map(int, input().split())

a_list = str(a) * b
b_list = str(b) * a

if a_list <= b_list:
    print(a_list)
else:
    print(b_list)

Solution (Python):
from sys import stdin


def main():
    a, b = map(int, stdin.readline().split())
    print(str(a) * b) if b > a else print(str(b) * a)


if __name__ == "__main__":
    main()

Solution (Python):
a,b = input().split()

print(a*int(b) if a<b else b*int(a))

Solution (Python):
a, b = map(int, input().split())
if a <= b:
    print(str(a) * b)
else:
    print(str(b) * a)

Solution (Python):
a, b = map(str, input().split())
ans = [a*int(b), b*int(a)]
print(min(ans))

Solution (Python):
a, b = map(int, input().split())
if a == b:
  print(str(a) * a)
elif a > b:
  print(str(b) * a)
else:
  print(str(a) * b)

Solution (Python):
a, b = map(str, input().split())
print(a*int(b)) if a<=b else print(b*int(a))

Solution (Python):
a,b= map(int,input().split())

X = 0
if a < b:
    for i in range(b):
        X += a * pow(10,i)

else :
    for i in range(a):
        X += b * pow(10,i)


print(X)

Solution (Python):

A, B = map(int, input().split())

AA=str(A)
BB=str(B)

Aans=""
Bans=""

i=0
while i<B:
    Aans=Aans+AA
    i+=1
j=0
while j<A:
    Bans=Bans+BB
    j+=1


print(min(Aans,Bans))

Solution (Python):
a,b = input().split()

if a < b:
  print(a*int(b))
else:
  print(b*int(a))

Solution (Python):
a,b=map(int,input().split())

bg=max(a,b)
sm=min(a,b)

print(str(sm)*bg)

Solution (Python):
a,b=map(int,input().split())
p=str(a)
q=str(b)
A=q*a
B=p*b

l=[A,B]
s=l.sort()
print(l[0])

Solution (Python):
a, b = map(int, input().split())
x = sum([int(i) for i in str(a) * b])
y = sum([int(i) for i in str(b) * a])
if x < y:
    print(str(a) * b)
elif x > y:
    print(str(b) * a)
else:
    if a < b:
        print(str(a) * b)
    else:
        print(str(b) * a)

Solution (Python):
a, b = [int(_) for _ in input().split()]
if a < b:
    print(str(a) * b)
else:
    print(str(b) * a)

Solution (Python):
a, b = map(int, input().split())

a_str = str(a)
b_str = str(b)

for _ in range(1, b) :
    a_str = a_str + str(a)

for _ in range(1, a) :
    b_str = b_str + str(b)

if a_str < b_str :
    print(a_str)
else :
    print(b_str)

Solution (Python):
a, b = map(int, input().split())
l = [str(a) * b, str(b) * a]
l.sort()
print(l[0])

Solution (Python):
a,b=map(int,input().split())
if a<=b:
  print(str(a)*b)
else:
  print(str(b)*a)

Solution (Python):
a,b=input().split()
print(min(a*int(b),b*int(a)))

Solution (Python):
a, b = input().split()

print(min(a * int(b), b * int(a)))

Solution (Python):
a,b = map(int,input().split())

if a <= b:
    print(str(a)*b)
else:
    print(str(b)*a)

Solution (Python):
a, b = map(int, input().split())
lis = sorted([str(a)*b, str(b)*a])
print(lis[0])

Solution (Python):
a, b = map(int, input().split())

s1 = str(a) *b
s2 = str(b) *a
if s1 < s2:
    print(s1)
else:
    print(s2)

Solution (Python):
a,b=input().split()
s=a*int(b)
t=b*int(a)
print(min(s,t))

Solution (Python):

A, B = list(map(int, input().split()))
ans = ""
if A >= B:
  for i in range(A):
    ans = ans + str(B)
else:
  for i in range(B):
    ans = ans + str(A)
    
print(ans)

Solution (Python):
a, b = map(int, input().split())

c = max(a, b)
d = str(min(a, b))

print(d * c)

Solution (Python):
a, b = map(str, input().split())
print (min((a*9)[0:int(b)],(b*9)[0:int(a)]))

Solution (Python):

"""
from sys import stdin
n = int(stdin.readline().rstrip())
data = [stdin.readline().rstrip().split() for _ in range(n)]
print(data)
print(*data, sep='\n')
"""


"""
s =input()
s=list(input())
a=int(input())
x,y = map(int,input().split())	
li = input().split()	
li = list(map(int,input().split()))	
li = input().split('T')	
"""



"""
from sys import stdin
n = int(stdin.readline().rstrip())
data = [stdin.readline().rstrip().split() for _ in range(n)]
print(data)
print(*data, sep='\n')
"""


"""
s =input()
s=list(input())
a=int(input())
x,y = map(int,input().split())	
li = input().split()	
li = list(map(int,input().split()))	
li = input().split('T')	
"""


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

mini = min(a,b)
maxx = max(a,b)
for i in range(maxx):
    print(mini, end="")

Solution (Python):
a, b = input().split()
print(a * int(b) if a <= b else b * int(a))

Solution (Python):
a,b=map(int, input().split())

A=str(a)*b
B=str(b)*a

print(min(A,B))

Solution (Python):
def solve():
    a, b = map(int, input().split())    
    return min(str(a)*b, str(b)*a)

print(solve())

Solution (Python):
a,b=map(int,input().split())

if a>=b:

    print(str(b)*a)
else:
    print(str(a)*b)

Solution (Python):
a,b = map(int,input().split())

A = str(a)*b
B = str(b)*a

print(min(A,B))

Solution (Python):
a,b=map(int,input().split())
c=min(a,b)
d=max(a,b)
ans = 0
for i in range(d):
  ans += c*(10**i)
print(ans)

Solution (Python):

a,b=map(int,input().split())
if a<b:print(str(a)*b)
elif a>b:print(str(b)*a)
else:print(str(a)*a)

Solution (Python):
a,b=map(int,input().split())
c=str(a)*b
d=str(b)*a
if a>=b:
    print(d)
else:
    print(c)

Solution (Python):
import sys
sys.setrecursionlimit(10**8)
def ii(): 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 li2(N): return [list(map(int, sys.stdin.readline().split())) for i in range(N)]
def dp2(ini, i, j): return [[ini]*i for i2 in range(j)]
def dp3(ini, i, j, k): return [[[ini]*i for i2 in range(j)] for i3 in range(k)]





A, B = mi()

print(str(min(A, B))*max(A, B))

Solution (Python):
a,b=map(int,input().split())
A=str(a)*b
B=str(b)*a
C=[A,B]
C.sort()
print(C[0])

Solution (Python):
a, b = map(int, input().split())
s1 = ""
s2 = ""
for i in range(a):
    s1 += str(b)
for i in range(b):
    s2 += str(a)
print(s1) if s1 <= s2 else print(s2)

Solution (Python):
n,m=map(int,input().split())
if n>m:
    print(str(m)*n)
else:
    print(str(n)*m)

Solution (Python):
N,M=input().split()
print(N*int(M) if N*int(M)<M*int(N) else M*int(N))

Solution (Python):
a,b = input().split()

if a <=b:
    print(a*(int(b)))
else:
    print(b*(int(a)))

Solution (Python):
a, b = map(int, input().split())

if a < b:
    print(str(a)*b)
else:
    print(str(b)*a)

Solution (Python):
a, b = map(int, input().split())

l = ['{}'.format(a)*b, '{}'.format(b)*a]
l.sort()
print(l[0])

Solution (Python):
n,m=map(int, input().split())
if n<m:
  print(str(n)*m)
else:
  print(str(m)*n)

Solution (Python):
a,b=map(int,input().split())
suma = 0
diga = 0
sumb = 0
digb = 0
for i in range(a):
    sumb += b * 10 **digb
    digb += 1
for j in range(b):
    suma += a * 10 **diga
    diga +=1
if int(suma) > int(sumb):
    print(suma)
else:
    print(sumb)

Solution (Python):
a,b=input().split()
A=a*int(b)
B=b*int(a)
if A<B:
  print(A)
else:
  print(B)

Solution (Python):
a, b = map(int, input().split())
aList = []
bList = []

for i in range(0, b):
    aList.append(str(a))

for i in range(0, a):
    bList.append(str(b))


if "".join(aList) < "".join(bList):
    print("".join(aList))
else:
    print("".join(bList))

Solution (Python):
l  = [int(x) for x in input().split()]
a, b = l[0], l[1]
if a > b:
    print(int(str(b)*a))
else:
    print(int(str(a)*b))

Solution (Python):
a,b=map(int,input().split())

print(min(str(a)*b,str(b)*a))

Solution (Python):
a, b = map(int, input().split())
AB = sorted([str(a) * b, str(b) * a])
print(AB[0])

Solution (Python):
a, b = map(int, input().split())
AB = sorted([str(a) * b, str(b) * a])
print(AB[0])

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

a = N[0]; b = N[1]
result = 0
if a<b:
    for i in range(b):
        result += a*10**i
else:
    for i in range(a):
        result += b*10**i

print(result)

Solution (Python):
a,b =map(int,input().split())

string_a  = str(a) * b
string_b = str(b) * a

d=[]
d.append(string_a)
d.append(string_b)

s= sorted(d)

print(s[0])

Solution (Python):
a,b=[x for x in input().rstrip().split()]

ans1=""
ans2=""
l=[]
for i in range(int(a)):
  ans1+=b

for i in range(int(b)):
  ans2+=a

l=[ans1,ans2]
l.sort()
print(l[0])

Solution (Python):
a, b = map(int, input().split())
if a>= b:
  for i in range(a):
    print(b, end="")
else:
  for i in range(b):
    print(a, end="")

Solution (Python):
a, b = map(int,input().split())
ans = ""

if a<b:
    for i in range(b):
        ans += str(a)
else:
    for i in range(a):
        ans += str(b)

print(ans)

Solution (Python):


import sys



















def main():
    mod = 1000000007                  
    inf = float('inf')
    sys.setrecursionlimit(10**6)    
    def input(): return sys.stdin.readline().rstrip()
    def ii():  return int(input())
    def mi():  return map(int, input().split())
    def mi_0(): return map(lambda x: int(x)-1, input().split())
    def lmi(): return list(map(int, input().split()))
    def lmi_0(): return list(map(lambda x: int(x)-1, input().split()))
    def li():  return list(input())
    
    
    a, b = input().split()
    print(a * int(b)) if a <= b else print(b * int(a))

if __name__ == "__main__":
    main()

Solution (Python):
ab = input().split()
ab.sort()
print(ab[0]*int(ab[1]))

Solution (Python):
a,b = map(str, input().split())
judge = True
tmpa = a
tmpb = b
if a > b:judge = True
else: judge = False
if judge:
    for i in range(int(a) - 1):
        b += tmpb
    print(b)
else:
    for i in range(int(b) - 1):
        a += tmpa
    print(a)

Solution (Python):
x,y = map(int,input().split())
print(min(str(x)*y , str(y)*x))

Solution (Python):
a,b = map(int,input().split())

if a<=b:
  print(str(a)*b)
else:
  print(str(b)*a)

Solution (Python):
a,b = map(int, input().split())
if a > b:
    print(str(b)*a)
else:
    print(str(a)*b)

Solution (Python):
a, b = map(int,input().split())
print(''.join(map(str,[a]*b)) if a<= b else ''.join(map(str,[b]*a)))

Solution (Python):
a , b = map(int,input().split())
s = max(a,b)
t = min(a,b)
k = 0
for i in range(0,s):
  k += t*(10**i)
  
  
print(k)

Solution (Python):
a,b = map(int,input().split())
numa = str(a)*b
numb = str(b)*a
if a>=b:
    print(numb)
else:
    print(numa)

Solution (Python):
def main():
    n, m = list(map(int, input().split()))
    s_1 = str(n) * m
    s_2 = str(m) * n
    if s_1 <= s_2:
        print(s_1)
    else:
        print(s_2)


if __name__ == '__main__':
    main()

Solution (Python):
a, b = input().split()

print(min(a * int(b), b * int(a)))

Solution (Python):
a,b = map(int,input().split())
A = str(a)*b
B = str(b)*a

if A < B:
    print(A)
else:
    print(B)

Solution (Python):
a, b = map(int, input().split())

A = str(a) * b
B = a * str(b)

if A < B:
    print(A)
else:
    print(B)

Solution (Python):
a, b = input().split()

A = a*int(b)
B = b*int(a)

if a>=b:
    print(B)
else:
    print(A)

Solution (Python):
a,b = map(int,input().split())

if a > b:
  print(str(b)*a)
else:
  print(str(a)*b)

Solution (Python):
a,b=map(int,input().split())
c=str(a)*b
d=str(b)*a
n=[c,d]
n.sort()
print(n[0])

Solution (Python):
a, b = map(int, input().split())

aS = str(a)*b
bS = str(b)*a

print(min(aS, bS))

Solution (Python):
import sys
a, b = map(int, sys.stdin.readline().split())
if a <= b:
  print(int(str(a)*b))
else:
  print(int(str(b)*a))

Solution (Python):
a,b = map(int,input().split())
l = []*2
l.append(str(a)*b)
l.append(str(b)*a)
l.sort()
print(l[0])

Solution (Python):
a,b = map(int,input().split())
A = str(a)*b
B = str(b)*a
l = []
l.append(A)
l.append(B)
l.sort()
print(l[0])

Solution (Python):
a,b = map(int,input().split())
A = []
B = []
for i in range(b):
    A.append(a)
for i in range(a):
    B.append(b)
c = []
c.append(A)
c.append(B)
c.sort()
for i in range(len(c[0])):
    c[0][i] = str(c[0][i])
print(''.join(c[0]))

Solution (Python):
a,b=map(str,input().split())
ans1=a*int(b)
ans2=b*int(a)
print(ans1 if str(ans1)<=str(ans2) else ans2)

Solution (Python):

a,b = input().split()
A = a * int(b)
B = b * int(a)
if A <= B:
    print(A)
else:
    print(B)

Solution (Python):
a,b=map(int,input().split())
print(str(min(a,b))*max(a,b))

Solution (Python):
n,m=map(int,input().split())
if n<=m:
  print(str(n)*m)
else:
  print(str(m)*n)

Solution (Python):
a,b=input().split()
s=''
for i in range(int(b)):
    s+=a
t=''
for i in range(int(a)):
    t+=b
data=[s,t]
data.sort()
print(data[0])

Solution (Python):
a,b = map(int,input().split())
if a>b:
  print(str(b)*a)
else:
  print(str(a)*b)

Solution (Python):
lis = list(map(int,input().split()))
a = [str(lis[0])*lis[1] , str(lis[1])*lis[0]]
a.sort()
print(a[0])

Solution (Python):
a, b = map(int, input().split())
x = max(a, b)
y = min(a, b)

print(str(y)*x)

Solution (Python):
A, B = map(int, input().split())

if A < B:
  print(str(A) * B)
else:
  print(str(B) * A)

Solution (Python):
def cul(x, y):
  z = []
  for i in range(x):
    z.append(int(y) * 10 ** i)

  return sum(z)

def main():
  a,b = map(int, input().split())
  num_a = cul(b, a)
  num_b = cul(a, b)
  test = []
  test.append(num_a)
  test.append(num_b)

  print(sorted(test, reverse = True)[0])


if __name__ == '__main__':
  main()

Solution (Python):
a,b = map(int, input().split())
A = ""
for i in range(b):
    A += str(a)
B = ""
for i in range(a):
    B += str(b)
print(max(int(A),int(B)))

Solution (Python):

a,b = [int(x) for x in input().split()]
print(str(min(a,b))*max(a,b))

Solution (Python):


a, b = input().split()
A = a * int(b)
B = b * int(a)

if a <= b:
    print(A)
else:
    print(B)

Solution (Python):
a,b=map(int,input().split())
strA=''
if(a>=b):
  for i in range(a):
    strA=strA+str(b)
  print(strA)
else:
  for i in range(b):
    strA=strA+str(a)
  print(strA)

Solution (Python):
a,b=input().split()
print(min(a*int(b),b*int(a)))

Solution (Python):
a,b = map(int,input().split())
print(str(min(a,b))*max(a,b))

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

else:
    print(str(b)*a)

Solution (Python):
a, b = map(int, input().split())
print(str(a)*b if a < b else str(b)*a)

Solution (Python):
a,b = map(int,input().split())
if a <= b:
    print(str(a)*b)
else:
    print(str(b)*a)

Solution (Python):
x = input().split()
a = int(x[0])
b = int(x[1])

if a >= b:
  for i in range(a):
    print(b,end="")
else:
  for i in range(b):
    print(a,end="")

Solution (Python):
a,b = map(int, input().split())

tmp = min(a,b)

if a == tmp:
    print(str(a) * b)
else:
    print(str(b) * a)

Solution (Python):
a, b = input().split()
if a <= b:
    ans = a * int(b)
else:
    ans = b * int(a)
print(ans)

Solution (Python):
a, b = map(int, input().split())

if a > b:
    print(str(b)*a)
else:
    print(str(a)*b)

Solution (Python):
def resolve():
    a,b=map(int, input().split())
    a_str=str(a)
    b_str=str(b)
    c=a_str*b
    d=b_str*a
    if a<=b:
        print(c)
    else:
        print(d)
resolve()

Solution (Python):
a,b = map(int,input().split())
if str(a)*b >= str(b)*a:
    print(str(b)*a)
else:
    print(str(a)*b)

Solution (Python):
def resolve():
    a,b=map(int, input().split())
    a_str=str(a)
    b_str=str(b)
    c=a_str*b
    d=b_str*a
    l=[c,d]
    l.sort()
    print(l[0])
resolve()

Solution (Python):
a,b=input().split()
ai=int(a)
bi=int(b)
aa=a*bi
bb=b*ai
print(aa if(a<=b) else bb)

Solution (Python):
a, b = map(int,(input().split()))

if a > b:
    print(str(b)*a)
else:
    print(str(a)*b)