import operator import functools prime = [2, 3] def simple(a): num = a[-1]+1 tr = False while tr != True: for i in range(2, num): if num%i == 0: tr = False num += 1 break else: tr = True a.append(num) # print(f'В список добавлено число {num}') def NOK(x,y): if x > y: difx = True else: difx=False arrayx=[] arrayy=[] counter=0 while x!=1: for i in range(counter, len(prime)): if prime[i]>(x/2): arrayx.append(x) x=1 break if x%prime[i]==0: x //= prime[i] arrayx.append(prime[i]) counter=0 i=0 break if (x>1) and (i==(len(prime)-1)): simple(prime) counter=i counter=0 while y!=1: for i in range(counter, len(prime)): if prime[i]>(y/2): arrayy.append(y) y=1 break if y%prime[i]==0: y//=prime[i] arrayy.append(prime[i]) counter=0 i=0 break if (y>1) and (i==(len(prime)-1)): simple(prime) counter=i print(arrayx, arrayy) count_ax = 0 y_second = list(arrayy) x_second = list(arrayx) for i in range(0, len(arrayy)): for for_x in range(0, len(x_second)): if arrayy[i] == x_second[for_x]: y_second.remove(arrayy[i]) x_second.remove(arrayy[i]) break result_array = y_second + arrayx result = functools.reduce(operator.mul, result_array, 1) print(result_array, result) return result first = int(input()) second = int(input()) print(NOK(first,second)) input()