peterverebics/CodeNet_Python_118 huggingface dataset:
N=int(input())
L=list(map(int,input().split()))
A=1
for i in range(N):
  A=A*L[i]
  if 10**18<A:
    print(-1)
  if 0 in L:
    print(0)
    exit()
print(A)
import numpy as np
import sys

N = int(input())
A = np.array([int(a) for a in input().split()])

if 0 in A:
    print(0)
#     print("AA")
else:
    if np.prod(A)>10**18:
        print(-1)
        sys.exit()
    else:
#         print(type(int(np.prod(A))))
        print(int(np.prod(A)))
N = int(input().split()[0])
a_list = list(map(int, input().split()))
t = 1
for a in a_list:
    t *= a
    if t >= 10**18:
        t = -1
        break
print(t)
n = int(input())
r = list(map(int,input().split()))

for i in range(n):
    if i == 0:
        x = r[i]
    else:
        x = x * r[i]
    
    if x > 10**18:
        x = -1
        break

print(x)
n = int(input())
A = list(map(int,input().split()))

c = 1
able = True
for a in A:
  c = c * a
  if c > 1e18:
    able = False
    break

if able:
  print(c)
else:
  print(-1)
import numpy as np

N = int(input())
input_int = [*map(int, input().split(" "))]
result = int(np.prod(input_int))
print(result if result <= 1e+18 else -1)
import functools
import operator
prod = functools.partial(functools.reduce, operator.mul)
N = int(input())
A = [ int(x) for x in input().split() ]
prod = functools.partial(functools.reduce, operator.mul)
print(prod(A))
import numpy as np

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

a_list = np.array(a_list)
ans = a_list.prod()

if ans > 10**18:
    ans = -1
print(int(ans))
N=int(input())
A=list(map(int,input().split()))
ans=1
for i in range(N):
  ans*=A[i]
  if ans > 10**18:
    break
if ans > 10**18:
  print(-1)
else:
  print(ans)
n = int(input())
a = list(map(int,(input().split())))
u = 1  

if 0 in a:
  print(0)
else:
  for i in a:
    u *=i

    
if u > 1000000000000000000:
  print(-1)
else:
  print(u)
import numpy
n=int(input())
a=list(map(int,input().split()))
ans=numpy.prod(a)
if ans>(10**18):
    ans=-1
print(ans)
n = int(input())
a = [int(x) for x in input().split()]
def check():
  ans = 1
  for i in range(n):
    ans *= a[i]
    if ans > 10**8:
      return -1
  return ans

print(check)
n=int(input())
a=map(int,input().split())
val = 1
exceed = 0
for i in a:
	if(exceed==0):
		val*=i
	if(val==0):
		print(0)
		exit(0)
	if(val>1000000000000000000):
		exceed=1
if(exceed==0):
	print(val)
else:
	print(-1)
# coding=utf-8

if __name__ == '__main__':
    N = int(input())
    li_A = list(map(int, input().split()))

    ans = li_A[0]

    for i in range(1,N):
        if (ans * li_A[i]) % 1000000000000000000 <= 0 :
            ans = ans * li_A[i]

        else:
            ans = -1

    print(ans)
n = int(input())
a = list(map(int, input().split()))

if a.count(0) != 0:
  print(0)
else:
  result = 1
  for i in range(n):
    result *= a[i]
    if result > 10^(18):
      print(-1)
      break
    else:
      continue
  else:
    print(result)
import sys
input_num = input()
input_list = input()
 
total_pow = 1
for num in input_list.split(" "):
  total_pow *= int(num)
  if total_pow > 10**18:
  	print("-1")
  	sys.exit()
print(total_pow)
n = int(input())
a = list(map(int,input().split()))
sum = 1
for i in a:
    if i == 0:
        sum = 0
        break
    sum = sum * i
    if sum > 10**18:
        print(-1)
        break

print(sum)
N = int(input())
A = list(map(int, input().split(' ')))

LIMIT = 10 ** 18

res = 1
for a in A:
    res = res * a
    if res > LIMIT:
        break

# res = math.exp(sum([math.log(a) for a in A]))

# X = np.array(A)
# res = X.prod()
#
# print(X)

# for a in A:
#     math.log(a)
#
#     res = res * a

if res > LIMIT:
    print('-1')
else:
    print(res)
import numpy as np
import sys
input = sys.stdin.readline
 
n = int(input())
a = list(map(int,input().split()))
ans = 1

for i in a:
    ans *= i
    if ans > 10**18:
        ans = -1
        break
    elif ans == 0:
        break
 
print(ans)
n=int(input())
A=list(map(int,input().split()))
ans=1

for a in A:
  ans *= a
  if ans > 10**18:
    print('-1')
    exit()
    
print(ans)
N = int(input())
A = list(map(int,input().split()))
result = 1
for i in range(N):
	result = result*A[i]
	if result>10**18:
		result = -1
		break
print(result)
def t():
    N = int(input())
    A = list(map(int, input().split()))
    T = 1
    while T < 10 ** 8:
        for i in A:
            T *= i
        return T
    return -1
print(t())
# スペース区切りの整数の入力
N, *d = map(int, open(0).read().split())

if N > 0:
	A = 1
	for O in d:
		A = A * O
		#print(O)
		if A > 10 ** 18:
			A = -1
			break
else:
	A = 0

print(A)
N = int(input())
A = [int(x) for x in input().split()]
print(N)
print(A)
ans = 1
for r in range(N):
  ans *= A[r]
print(ans)
import numpy

N = int(input())
A = [int(x) for x in input().split()]
c = numpy.prod(A)

if c > 1000000000000000000:
	print("-1")

else:
	print(c)
def main():
    N = input()

    ab = input( )

    ab = ab.split()
    
    if 0 in ab:
        print(0)


    SUM = 1
    for i in range(int(N)):
        SUM = SUM * int(ab[i])

    if (int(SUM) < 10 ** 18):
        print(SUM)
    else:
        print(-1)
        
main()
N = int(input())
A = list(map(int,input().split()))

ans=1
for i in range(N):
    ans = ans * A[i]
    if ans > 10**18:
        ans = -1
        break
print(ans)
#from operator import mul
#from functools import reduce
cnt = 1000000000000000000
ans =1
N = map(int, input().split())
nums = list(map(int, input().split()))

if "0" in N:
        print("0")
for num in nums:
    ans *= num
    if ans > cnt :
        print(-1)

print(ans)
n = int(input())
lis = list(map(int,input().split()))
res = 1
for i in lis:
    if res > 10**18:
        print(-1)
        exit()
    else:
        res *= i
print(res if res <= 10**18 else -1)
import math
n=int(input())
a=list(map(int, input().split()))
ans=1
for i in range(n):
    ans*=a[i]
if len(str(ans-1))<=18:
    print(ans)
else:
    print(-1)
print(len(str(ans)))
n=int(input())
a=list(map(int, input().split()))
ans=1
for i in range(n):
    ans*=a[i]
    if ans>10**18:
        break
    else:
        continue
    break

if ans>10**18:
    print("-1")
else:
    print(ans)
import numpy as np
N = int(input())
A = list(map(int,(input().split())))

ans = np.prod(A)

if ans > 10**18:
    print('-1')
else:
    print(ans)
N=int(input())
n_list= list(map(int,input().split()))
ans=1
for i in range (N):
  ans*=n_list[i]
  if ans > 10**18 :
    print ('-1')
    break
if ans <= 10**18:
  print(ans)
N = int(input())
A = list(map(int, input().split()))

ans = 1
if A.count(0) > 0:
  ans = -1
else:
  for i in range(N):
      ans *= A[i]

if ans > 10**18:
    print(-1)
else:
    print(ans)
n=int(input())
a=list(map(int,input().split()))
ans=1
for i in a:
    ans=ans*i
    if ans>10**18:
        print(-1)
        break
else:
    print(ans)
n = int(input())
a = list(map(int,input().split()))
res = 1
for i in range(n):
    res*=a[i]
    if res>10**18:
        print(-1)
        break
else:
    print(res)
n=int(input())
a=list(map(int,input().split()))

ans=1
for i in range(n):
    ans=a[i]
if ans>10**18:
    print(-1)
    exit()
print(ans)
import numpy as np

N = int(input())
A = list(map(int,input().split()))
#A = np.sort(np.array(A))
A = np.array(A)

ans = np.prod(A)
if ans > 10**8:
    ans = -1

print(ans)
#TIME : 
import sys
from math import sqrt
input = sys.stdin.readline

def inp():
    return(int(input()))
def inlt():
    return(list(map(int,input().split())))
def insr():
    s = input()
    return(list(s[:len(s) - 1]))
def invr():
    return(map(int,input().split()))

MAX = 10**18
n = inp()
a = inlt()
if 0 in a:
    print(0)
    exit()
res = 1
for num in a:
    res*=num
    if res > MAX:
        print(-1)
print(res)
import numpy as np
N=int(input())
A=list(map(int,input().split()))
A=np.array(A)
B=A.prod()
if B>10**18:
    print(-1)
else:
    print(B)
def main():
    n = int(input())
    array = [int(x) for x in input().split()]
    mod = 10 ** 18
    ans = 1
    for x in array:
        ans *= x
        if ans > mod:
            print(-1)
            return
    print(ans)


if __name__ == '__main__':
    main()
n=int(input())
l=map(int,input().split())
k=1
for s in l:
    k=s*k
    if k>10**18:
        break

if k<=10**(18):
    print(k)
else:
    print(-1)
import sys
sys.setrecursionlimit(10**6)
n=int(input())
lis=list(map(int, input().split()))
if 0 in lis:
  print(0)
  exit()
elif max(lis)>10**18:
  print(-1)
  exit()
 
def calc(i, h):
  if h>10**18:
    return -1
  elif i==0:
    return h
  else:
    return h*calc(i-1, lis[i-1])
print(calc(n, 1))
n=int(input())
a=list(map(int, input().split()))
ans=1
f=True
for i in a:
    ans*=i
    if ans>10**18:
        f=False
        break
if f:
    print(ans)
else:
    print(-1)
import numpy as np
N = int(input())
A = list(map(int,input().split()))

ans = np.prod(A)
  
if ans > 10 ** 18:
  print(-1)
  exit()


print(int(ans))
N = int(input())
A = list(map(int,input().split()))

t = 1
ans = 1
count = 0
if 0 in A:
    ans = 0
    
for a in A:
    ans *= a
    t *= a
    while t >= 10:
        t /= 10
        count += 1
    if count >= 19:
        ans = -1 
        break

if ans > 10**18:
    print(-1)
else:
    print(ans)
N=int(input())
n_list= list(map(int,input().split()))
ans=1
for i in range (N):
  ans*=n_list[i]
print(ans)
import sys

N = int(input())
A = list(map(int, input().split()))
ans = 1
for a in A:
    ans *= a
    if ans > 10**18:
        print(-1)
        sys.exit()

print(ans)
import numpy

n = int(input())
a_list = list(map(int, input().split()))
limit = 10**18

ans = numpy.prod(a_list)
if ans >= limit:
    print(-1)
else:
    print(ans)
N=int(input())
integers=list(map(int,input().split()))
def multiply(integers):
  ans=1
  for i in integers:
    ans=ans*i
    if i==0:
        return 0
    if ans>=10**18:
        return -1
  return ans

ans=multiply(integers)
print(ans)
N = int(input())
A = list(map(int, input().split()))
ans = 1
for i in range(N):
  ans  *= A[i]
  if ans > 10**18:
    ans = -1
    break
print(ans)
N = int(input())
S = list(map(int,input().split()))
t = 10**18
ans = 1
if S[0] > t:
    print(-1)
    exit(0)
  
for n in S:
  ans *= n
  if ans > t:
    print(-1)
    exit(0)
  
print(ans)
import numpy as np
n=int(input())
i=list(map(int, input().split()))
k =np.prod(i)
if k<=10**18:
  print(k)
else:
  print("-1")
N = int(input())
A = list(map(int, input().split()))

tmp = 1
for num in A:
    tmp *= num
    if tmp > 1e18:
      break
if tmp <= 1e18:
    print(tmp)
else:
    print("-1")
import sys
n = int(input())
a = list(map(int,input().split()))
f = False;
for i in range(n):
  if a[i] == 0:
    f = True
if f:
  print(n)
  sys.exit(0)
ans = 1
for i in range(n):
  ans *= a[i]
  if ans > 1e18:
    print(-1)
    sys.exit(0)
print(ans)
# coding: utf-8
# Your code here!
num = int(input())
s = list(map(int,input().split()))
res = 1
for i in s:
    res *= i
    if res >= 10 ** 18:
        break
    
if res <= 10 ** 18:    
    print(res)
else:
    print(-1)
def main():
    n = int(input())
    As = list(map(int, input().split()))

    ans = 1
    if 0 in As:
        print(0)
        exit()

    for i in range(n):
        ans *= As[i]
        if ans > 10**18:
            ans = -1
        break

    print(ans)


if __name__ == "__main__":
    main()
n = int(input())
lst = list(map(int,input().split()))
res = 1
for i in lst:
    res *= i
if res >= 1000000000000000000:
    print(-1)
else:
    print(res)
n = int(input())
a = list(map(int,input().split()))
b = 1
if 0 in a:
    print(0)
else:
    for i in a:
        b = b*i
if b>(10**18):
    print(-1)
else:
    print(b)
n = int(input())
a =list(map(int,input().split()))
total = 1
i = 0
while i <n:
    total *= int(a[i])
    if total >10**18:
        total = '-1'
        break
    i += 1
    
print(total)
import sys
n = int(input())
a = [int(_) for _ in input().split()]
ans = 1
for i in a:
    if i == 0:
        ans = 0
        print(ans)
        sys.exit()
    ans *= i
    if ans > 10**18:
        ans = -1
        print(ans)
        sys.exit()

print(ans)
n = int(input())
num_str = input().split()
s = list(map(int, num_str))
a = 1
for i in s:
    a = a * i
    if a > 10 ** 18:
        a = -1
        break
print(a)
N = int(input())
A = list(map(int, input().split()))
ans = 1
if 0 in A:
    print(0)
for i in range(N):
    ans *= A[i]
    if ans > 10 ** 18:
        print(-1)
        exit()
print(ans)
def main():
    k = input()
    n = [int(x) for x in input().split()]
    ans = 1
    flag = False
    print(n)
    for i in n:
        # print(ans)
        ans *= i

    if ans > 10**18:
        print(-1)
    else:
        print(ans)

main()
N = int(input())
a = [int(i) for i in input().split(" ")]
res=1
xx=10**18
f=0
for i in a:
    res*=i
    if res>xx:
        f=1
        print(-1)
        break

if f==0:
    print(res)
N = int(input())
nums = input().split()
mul = int(nums[0])
for i in nums[1:]:
    mul *= int(i)

print(mul)
N = input()
A = input().split()[:int(N)]
an = 1

an = [an*int(num) for num in A]

if an[0] >= 10**18:
    print(-1)
else:
    print(an[0])
from sys import exit

n=int(input())
A=list(map(int,input().split()))
A.sort()

tmp=1
for a in A:
	tmp*=a
	if tmp>10**8:
		print("-1")
		exit()

print(tmp)
import numpy as np

n=int(input())
a=np.array(list(map(int,input().split())))

ans=np.prod(a)

if ans>10**18:
    print(-1)
else:
    print(int(ans))
n = int(input())
x = list(map(int, input().split()))
s = 1
for v in x:
    if v == 0:
        print(0)
        exit
    s = s * v

if 10 ** 18 <= s:
    print("-1")
else:
    print(s)
n=int(input())
l=list(map(int,input().split()))
s=1
for i in l:
  s=s*i
if s<=10**8:
  print(s)
else:
  print("-1")
n = int(input())
a = list(map(int,input().split()))
A = 1
for i in range(n):
    A = A * a[i]
    if A> 10**18:
        print("-1")
        break
        print(int(A))
else:
    print(int(A))
import numpy
n=int(input())
l=list(map(int,input().split()))
x=[*l]
y=numpy.prod(x)
if y>1000000000000000000:
  print("-1")
else:
  print(y)
n = int(input())
ans = 1 
a = list(map(int,input().split()))
for i in range(n):
  ans *= i
if ans > 10**18:
  print("-1")
else:
  print(ans)
import sys
t = 10**18

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

ans = 1
for i in range(n):
    ans = ans * li[i]
    if ans > t:
        print(-1)
        sys.exit()

print(ans)
N = int(input())
A = list(map(int,input().split()))
finish = 0
result = 1

if 0 in A:
    print(0)
    finish = 1
else:
    for n in range(N):
        result = result*A[n]
        if result > 10**18:
            print(-1)
            finish = 1

    if finish == 0:
        print(result)
import numpy as np
#from numba import njit

def getVar():
    return map(int, input().split())
def getArray():
    return np.array(list(map(int, input().split())))

def main():
    N = getVar()
    A = getArray()

    if 0 in A:
        print (0)
        return
    prod = 1
    for a in A:
        prod *= a
        if prod > 1000000000000000000:
            print(-1)
            return
    print(prod)

main()
n=int(input())
a=list(map(int, input().split()))
ans=a[0]
for i in a[1:]:
    ans*=i
    if ans>10**18:
        print(-1)
        exit()
print(ans)
from functools import reduce

mul = lambda x, y: x*y
ret = reduce(mul, map(int, input().split()), 1)

if 10**8 <= ret:
  print(-1)
else:
  print(ret)
n=int(input())

a=input().split()

mul=1

for i in range(n):
  mul *= int(a[i])
  
  if 1000000000000000000<mul:
    mul=-1
    break
print(mul)
import numpy as np
n = input()
list_of_num = map(int, (input().split()))
multiply = np.prod(list(list_of_num))

if multiply > 10**18:
  print('-1')
else:
  print(multiply)
import numpy as np
n = int(input())
aaa = list(map(int, input().split()))
aaa = np.array(aaa)
ans = aaa.prod()
print(int(ans) if ans <= 10 ** 18 else -1)
# from operator import mul
# from functools import reduce

# N = int(input())
# A = list(map(int, input().split()))
# S = reduce(mul, A)
# if S > 10 ** 18:
#     print("-1")
# else:
#     print(S)
import numpy as np
N = int(input())
A = list(map(int, input().split()))
S = np.prod(A)
if S > 10 ** 18:
    print("-1")
else:
    print(S)
N = int(input())
A = list(map(int, input().split()))
import numpy as np
import sys

if 0 in A:
    print(0)
    sys.exit()

ans = np.prod(A)
if ans<= 10**18:
    print(ans)
    sys.exit()
if 10**18 < ans:
    print("-1")
N = int(input())
a = list(map(int,input().split()))

ans = 1
if 0 in a:
  print(0)
  exit()
for i in range(N):
  ans *= a[i]
  if ans >= 10**18:
    print(-1)
    exit()
  
print(ans)
import sys
N = int(input())
A = list(map(int, input().split()))
B = 1
for i in A:
    B = B * i
    if B >= 10 ** 18:
        print(-1)
        sys.exit()
print(B)
from functools import reduce
l = 10**18
n = int(input())
A = list(map(int,input().split()))
S = 1
for i in range(n):
    S = S * A[i]
    if S > l:
        print(-1)
        break
if S <= l:
    print(S)
import sys
N=int(input())
A=list(map(int,input().split()))
if 0 in A:
    print(0)


ans=1
for elem in A:
    ans*=elem
    if ans>10**18:
        print(-1)
        sys.exit()
print(ans)
N = int(input())
A = list(map(int, input().split()))
x = 1
for i, v in enumerate(A):
  if i >= N:
    break
  x *= A[i]
  if x>1000000000000000000:
    print('-1')
    exit()

print(x)
A, B = map(float, input().split())
B = B * 100 + 0.99
B = int(B)
print(int(A) * B // 100)
import decimal

A, B = map(decimal.Decimal, input().split())
ans = A * B
print(int(ans))
import math
a,b=input().split()
a=int(a)
L=list(b)
if "." in L and L[0]==0:
  c=L[2]+L[3]
  c=int(c)
  print(c*a//100)
elif  "." in L and L[0]!=0:
  c=L[0]+L[2]+L[3]
  c=int(c)
  print(c*a//100)
# -*- coding: utf-8 -*-
"""
Created on Sun May 31 21:07:49 2020

@author: NEC-PCuser
"""

A, B = map(str, input().split())
A = int(A)
B = float(B) * 1000 // 1

C = A * int(B) // 1000
print(C)
a,b=map(str,input().split())
a=int(a)
b=100*int(b[0])+10*int(b[2])+1*int(b[3]) #bを100倍した値(整数)に直す
print((a*b)//100)
a, b = input().split()
a = int(a)
b = int(b[0] + b[2] + b[3])
ans = int(a * b // 100)
print(ans)
from decimal import Decimal
A,B = input().split()
print(int(int(A)*Decimal(B)))
from decimal import Decimal

A, B = input().split()
A = Decimal(A)
B = Decimal(B)
ans = A * B
print(int(ans))
from decimal import Decimal
import math
a,b = input().split()
a = Decimal(a)
b = Decimal(b)
print(math.floor(a*b))
a, b = input().split()
print(int(a)*(round(float(b)*100))//100)
import math
A,B=[i for i in input().split()]
f2i = int(float(B)*100 + 0.5)
print( (int(A)*f2i) // 100 )
a,b=map(int,input().replace(".", "").split())
print(a*b//100)
from decimal import *

str = input().split()
A = Decimal(str[0])
B = Decimal(str[1])

print((A*B).quantize(Decimal('0'), rounding=ROUND_DOWN))
from decimal import Decimal
a,b = input().split()
print(int(Decimal(a)*Decimal(b)))
import math
a,b=input().split()
a=int(a)
b= int(b.replace(".",""))
print(a*b//100)
from decimal import Decimal
a,b = input().split()
print(int(Decimal(a) * Decimal(b)))
a,b=input().split()
a=int(a)
b=int(b[:-3]+b[-2:])
#b=int(float(b)*100)
print(int(a*b//100))
A,B = open(0).read().split()
A = int(A)
B = int(B.replace('.',''))
print(A*B//100)
a,b=map(str,input().split())
a=int(a)
c=''
for i in b:
  if i=='.':
    continue
  else:
    c+=i
c=int(c)
print(int(a*c//100))
def main():
    A, B = input().replace('.','').split(' ')
    print(int(A)*int(B)//100)

if __name__ == "__main__":
    main()
from decimal import Decimal
import math
a, b = map(Decimal,input().split())
print(math.floor(a*b))
A, B = input().split(' ')

Bt = B[0]+B[2]+B[3]
Bt = int(Bt)
ans1=int(A)*int(Bt)
print(ans1//100)
from math import floor
from decimal import Decimal

AB = input().split()
A = Decimal(AB[0])
B = Decimal(AB[1])

c = floor(A * B)
print(c)
A,B=input().split()
A=int(A)
B=list(B)
N=B[0]+B[2]+B[3]
N=int(N)
C=int(A*N//100)
print(C)
a,x=input().split()
a=int(a)
b,c=map(int,x.split('.'))
b=b*100+c
print((a*b)//100)
# C - Multiplication 3

a, b = input().split()
a = int(a)
assert b[-3] == '.'
b = int(b[:-3] + b[-2:])

print(a * b // 100)
from decimal import Decimal
a,b=input().split()
print(int(Decimal(a)*Decimal(b)))
a,b=input().split()
a=int(a)
b=int(b.replace('.',''))
ans=int(a*b)
print(ans//100)
# w/o decimal module

a, b = map(str, input().split())
b = b[:-3] + b[-2:]
# print(int(int(a)*int(b) / 100)) # WA
print(int(a)*int(b) // 100)
import math
from decimal import Decimal

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

print(math.floor(A*B))
import decimal
a,b = input().split()
c = decimal.Decimal(a)
d = decimal.Decimal(b)
#print(c,d)
#rint(c*d)
print(int(c*d))
import math
from decimal import *
getcontext().prec = 300
a,b = map(Decimal,input().split())
print(math.floor(Decimal(a) * Decimal(b)))
a, b = map(str, input().split())
b = b[:-3] + b[-2:]
a = int(a)
b = int(b)
c = str(a*b)
c = '000' + c
c = c[:-2]
print(int(c))
A,B=input().split()
print(int(A)*int(B.replace('.',''))//100)
A, B = map(str, input().split())

A = int(A)
B1, B2 = map(int, B.split('.'))
ans = (A * B1) + int(A * B2 // 100)

print(ans)
a,b=input().split()
a=int(a)
b=int(b[0]+b[2:])
print((a*b)//100)
import math
from decimal import Decimal
A, B = input().split()
A = int(A)
B = Decimal(B)
C = A * B
ans = math.floor(C)
print(ans)
from decimal import *
A,B = [Decimal(i) for i in input().split()]
print(A*B//1)
import math 
from decimal import Decimal 
a, b = input().split()
a = Decimal(a)
b = Decimal(b)
#print(type(a))
print(math.floor(a*b))
from decimal import *
def resolve():
    X,Y = map(Decimal,input().split())
    print(int(X*Y))
resolve()
import decimal
A, B = input().split()
A = decimal.Decimal(A)
B = decimal.Decimal(B)
print(int(A * B))
a, b = input().split()

a = int(a)
b = int(b[0] + b[2:])

ans = (a * b) // 100
print(ans)
import sys

readline = sys.stdin.readline
MOD = 10 ** 9 + 7
INF = float('INF')
sys.setrecursionlimit(10 ** 5)


def main():
    a, b = input().split()
    c, d = int(a), int(b[0] + b[-2:])

    print(c * d // 100)


if __name__ == '__main__':
    main()
import math
from decimal import Decimal as D, getcontext

getcontext().prec = 1000

A, B = input().split()
A, B = D(A), D(B)
print(int(A * B // D(1)))
a,b=input().split()
a=int(a)
c,d=b.split(".")
c=int(c);d=int(d)
ans=a*(c*100+d)
print(ans//100)
from math import floor
from decimal import Decimal
A,B=input().split()
A=int(A)
B=Decimal(B)
print(int(A*B))
from fractions import Decimal, Fraction
a,b = input().split()
a = Fraction(a)
x = Decimal(b).as_integer_ratio()
b = Fraction(x[0], x[1])
print(int(a*b))
a,b = input().split()
a = int(a)
b = int(b.replace('.',''))
print(int(a*b//100))
from decimal import *

a, b = input().split()
a = Decimal(a)
b = Decimal(b)
ans = a * b
ans = Decimal(str(ans)).quantize(Decimal(str(0)), rounding=ROUND_DOWN)
print(ans)
a,b=map(int,input().replace('.','').split())
print(a*b//100)
import math
A,B = input().split()
A = int(A)
B = float(B)
B = round(B*1000)
B = int(B)
print(math.floor(A*B//1000))
import math
import decimal
a,b=input().split()
print(math.floor(int(a)*decimal.Decimal(b)))
def main():
    A, B = input().split()
    A = int(A)
    B1, B2 = map(int, B.split('.'))
    B = B1 * 100 + B2
    ans = A * B // 100
    print(ans)

if __name__ == '__main__':
    main()
A, B = input().split()
B1, B2 = B.split('.')
ans = int(A) * (int(B1) * 100 + int(B2))
print(ans // 100)
a, b = input().split()
a = int(a)

for i in range(len(b)):
    if b[i] == '.':
        t = 10 ** (len(b)-1-i)
        nb = int(b[:i] + b[i+1:])

print(a*nb//t)
# -*- coding: utf-8 -*-

A = input().split()

a1 = int(A[0])
a2 = int(int(A[1][0])*100 + int(A[1][2])*10 + int(A[1][3]))

print(int(a1*a2)//100)
a,b=map(int,input().replace(".","").split())
print(a*b//100)
from decimal import *

getcontext().prec = 20
 
N = list(map(str, input().split()))
A = Decimal(N[0])
B = Decimal(N[1])
  
print(int(A*B))
from decimal import *
a, b = map(Decimal, input().split())

print(int(a * b))
import decimal
a,b = input().split()
A = int(a)
B = decimal.Decimal(b)
c = (A*B).quantize(decimal.Decimal('1'), rounding=decimal.ROUND_FLOOR)
print(c)
import sys
read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines
sys.setrecursionlimit(10 ** 7)

from decimal import Decimal

a, b = map(float, readline().split())
a = Decimal(str(a))
b = Decimal(str(b))
print(int(a * b))
import decimal
a, b = input().split()
a = decimal.Decimal(a)
b = decimal.Decimal(b)
print(int(a*b))