Problem:
 Score : 300 points    Problem Statement Compute A \times B , truncate its fractional part, and print the result as an integer.      Constraints  0 \leq A \leq 10^{15}  0 \leq B < 10  A is an integer.  B is a number with two digits after the decimal point.         Input Input is given from Standard Input in the following format:  A  B       Output Print the answer as an integer.        Sample Input 1 198 1.10      Sample Output 1 217  We have 198 \times 1.10 = 217.8 . After truncating the fractional part, we have the answer: 217 .       Sample Input 2 1 0.01      Sample Output 2 0       Sample Input 3 1000000000000000 9.99      Sample Output 3 9990000000000000

Solution (Python):
a,b = input().split()
a = int(a)
b = b.replace('.','')
b = int(b)
print(a*b//100)

Solution (Python):
from sys import stdin
from decimal import Decimal
import math
A, B = [Decimal(x) for x in stdin.readline().rstrip().split()]
print(int(math.floor(A * B)))

Solution (Python):
def main():
    A, B = input().split()

    A = int(A)

    B_spl = B.split('.')
    L = len(B_spl[1])  
    B_int, B_frac = map(int, B_spl)  

    ans = (A * B_int) + (A * B_frac) // pow(10, L)

    print(ans)


if __name__ == '__main__':
    main()

Solution (Python):
A, B = input().split()
A = int(A)
B = float(B)
B = int(B * 1000)
C = A * B
C //= 1000
print(C)

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

c = int(a)*int(float(b) * 1000)//1000

print (c)

Solution (Python):
from decimal import Decimal

A, B = map(float, input().split())
ans = int(Decimal(str(A))*Decimal(str(B)))
print(ans)

Solution (Python):
A,B=input().split()
A=int(A)
B=int(B[0:-3] + B[-2:])
print(A*B//100)

Solution (Python):
import math
from decimal import Decimal
from sys import stdin


def get_result(data):
    A, B = data
    return A * int(B * 100) // 100


if __name__ == '__main__':
    data = stdin.readline().rstrip().split(' ')
    data = [int(data[0]), Decimal(data[1])]
    result = get_result(data)
    print(result)

Solution (Python):
import decimal
a=list(map(decimal.Decimal,input().split()))
m=1
for x in a:
    m=m*x
print(int(m))

Solution (Python):
from decimal import *
A, B = input().split()
C = str(Decimal(A) * Decimal(B))
for i in C:
  if i ==".":
    exit()
  else:
    print(i, end ="")

Solution (Python):

a, b = input().split()
a = int(a)
b = float(b) * 1000
b = int(b)
print(int((a * b) // 1000))

Solution (Python):
A,B=map(float,input().split(' '))
A=int(A)
B=int(B*1000)
print(A*B//1000)

Solution (Python):
[A,B] = [x for x in input().split()]

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

print(a*b//1000)

Solution (Python):
import math
from decimal import Decimal
A, B = input().split()
A = int(A)
B = Decimal(B)
ans = A * B
print(math.floor(ans))

Solution (Python):
import math
A, B = input().split()
A = int(A)
B = int(B[0] + B[2] + B[3])
ans = str(A * B)
if len(ans) > 3:
    print(ans[:-2])
else:
    print(0)

Solution (Python):
from decimal import Decimal
import math
a,b = list(map(float, input().split()))
b *= 1000
A = int(a)
B = int(b)







print(A*B//1000)

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

a = int(a)
b = int(b.replace(".",""))

print((a*b)//100)

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

A = int(A)
B = float(B)

B_by100 = int(B*100+0.5)
ans_by100 = A*B_by100



ans=ans_by100//100
print(str(ans))

Solution (Python):
def main():
    A, B = input().split()

    A = int(A)
    B_int, B_frac = map(int, B.split('.'))  
    L = len(str(B_frac))  

    ans = (A * (B_int * 100 + B_frac)) // 100

    print(ans)


if __name__ == '__main__':
    main()

Solution (Python):
a,b = input().split()
b = float(b)+0.001
a = int(a)
b = int(b*100)
print((a*b)//100)

Solution (Python):
a,b = input().split()
b = float(b)+0.009
a = int(a)
b = int(b*100)
print((a*b)//100)

Solution (Python):
a,b=input().split()
print(int(a)*int(float(b)*1000)//1000)

Solution (Python):
a, b = input(). split()
a = int(a)
b = int(b.replace('.', ''))
print(a*b//100)

Solution (Python):
from decimal import *
getcontext().prec = 28
a,b = map(Decimal,input().split())
ans = a*b
print(int(ans))

Solution (Python):
A, B = input().split()
A = int(A)
B = float(B)
B = int(B * 1000)
C = A * B
C //= 1000
print(C)

Solution (Python):
def c_multiplication_3():
    from decimal import Decimal
    A, B = [Decimal(i) for i in input().split()]
    return A * B // 1

print(c_multiplication_3())

Solution (Python):
from decimal import *
a,b=map(Decimal,input().split())
print(int(a*b))

Solution (Python):
a, b = map(float,input().split())
print(int(a) * int(float(b)*1000)//1000)

Solution (Python):

import sys
import decimal

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

A, B = sr().split()
A = int(A)
B = decimal.Decimal(B) * 100
answer = A*B // 100
print(answer)

Solution (Python):
A,B = map(float,input().split())
a = int(A)
b = int(B*100+0.1)
ans = (a*b)//100
print(ans)

Solution (Python):





















A,B = input().split()
A = int(A)
B = int(B.replace(".",""))

ans = (A*B)//100

print(ans)

Solution (Python):
import os
import sys
from collections import defaultdict, Counter
from itertools import product, permutations,combinations, accumulate
from operator import itemgetter
from bisect import bisect_left,bisect
from heapq import heappop,heappush
from math import ceil, floor, sqrt, gcd
from copy import deepcopy
from decimal import *

def main():
    a,b = map(Decimal, input().split())
    result = a*b
    print(int(result))
    
if __name__ == "__main__":
    main()

Solution (Python):
A,B = map(float,input().split())
a = int(A)
b = int(B*100+0.5)
ans = (a*b)//100
print(ans)

Solution (Python):
import math
from decimal import Decimal
from sys import stdin


def get_result(data):
    A, B = data
    return math.floor(A * B)


if __name__ == '__main__':
    data = stdin.readline().rstrip().split(' ')
    data = [int(data[0]), Decimal(data[1])]
    result = get_result(data)
    print(result)

Solution (Python):
a, b = input().split()
print(int(a) * int(float(b)*1000)//1000)

Solution (Python):
import math

import queue
from collections import deque,defaultdict
import heapq
from sys import stdin,setrecursionlimit


ipt = stdin.readline
setrecursionlimit(10**7)

a,b = input().split()
b = int(b.replace(".",""))
a = int(a)
print((a*b)//100)

Solution (Python):
import math
from decimal import Decimal
from sys import stdin


def get_result(data):
    A, B = data
    return int(A * B)


if __name__ == '__main__':
    data = stdin.readline().rstrip().split(' ')
    data = [int(data[0]), Decimal(data[1])]
    result = get_result(data)
    print(result)

Solution (Python):
a, b = input().split()
a = int(a)
b = int(b.replace('.',''))
print((a*b) // 100)

Solution (Python):
from decimal import Decimal

if __name__ == "__main__":
    A, B = input().split()
    A = Decimal(int(A))
    B = Decimal(B)
    print(int(A * B))

Solution (Python):
a,b = input().split()
b = b.replace('.','')
ans = int(a)*int(b)//100
print(ans)

Solution (Python):
import sys
import copy
import math
import bisect
import pprint
import bisect
from functools import reduce
from copy import deepcopy
from collections import deque
from decimal import *

import numpy as np

import math

if __name__ == '__main__':
    a = [str(i) for i in input().split()]
    b = int(a[0])
    c = Decimal(a[1]) * Decimal(100)
    d = Decimal(a[0]) * Decimal(c) / Decimal(100)
    e = int(d)
    print(e)

Solution (Python):
ab=input().split()
a=int(ab[0])
b=ab[1].replace('.','')
b=int(b)
ans=a*b//100
print(ans)

Solution (Python):
from decimal import Decimal
a,b=input().split()
a=int(a)
b=Decimal(b)
print(int(a*b))

Solution (Python):
A, B = input().split()
B1, B2 = B.split('.')
ans = int(A) * (int(B1) * 100 + int(B2))
print(ans // 100)

Solution (Python):
a,b=input().split()
a=int(a)
b=b.replace(".","")
b=int(b)
print(a*b//100)

Solution (Python):
import decimal

a, b = input().split()

a = int(a)
b = decimal.Decimal(b)
b *= 100

ans = a * b

ans //= 100

print(ans)

Solution (Python):


import math
nums = []
nums = input().split(" ")
num1 = int(nums[0])
num2 = int(float(nums[1])*1000)

 
ans = str(num1*num2)
if len(ans) < 4:
    print(0)
else:
    print(ans[:-3])

Solution (Python):
from decimal import Decimal
import math

a, b = input().split()
a = int(a)
b = Decimal(b)
ans = math.floor(a*b)
print(ans)

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

c = b[0] + b[2:]
print(int(a) * int(c) // 100)

Solution (Python):
a,b=map(float,input().split())
a=int(a)
b=int((b+10**-8)*100)
print(a*b//100)

Solution (Python):
import math

A,B = input().split()
C = int(A)*int(float(B)*1000)
print(math.floor(C//1000))

Solution (Python):
import sys
 
if __name__ == '__main__':
    str = input().strip()
    
    a, b = str.split()
 
    aval = int(a)
    bval = round(float(b) * 100)
    
    print(aval * bval // 100)

Solution (Python):
a,b = input().split()
a = int(a)
b = float(b)
ans = int((a * int(b * 100 + 0.1))) // 100
print(ans)

Solution (Python):
a, b = input().split()
a = int(a)
b = int(float(b) * 1000)
x = (a * b) // 1000
print(x)

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

b = b.replace(".","")

a = int( a )
b = int( b )
print( a * b // 100 )

Solution (Python):
from decimal import Decimal
A, B = input().split()
A = int(A)
B = Decimal(B)
print(int(A*B))

Solution (Python):
import math

a, b = input().split()
a = int(a)
b = int(float(b)*1000)

n = a*b
n = n//1000
print(math.floor(n))

Solution (Python):
from decimal import Decimal

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

print(int(A * B))

Solution (Python):
import math
s=input()
a, b = s.split()
b = int(b[0] + b[2:])
ans = (int(a) * b) // 100
print(ans)

Solution (Python):
A, B = map(float, input().split())
A = int(A)
B = int(B * 100 + 0.5)
print(A * B // 100)

Solution (Python):
import numpy as np
import scipy as sp
import math
 
x, y = input().split()
a = int(x)
b = float(y)
c = math.floor(b*100+0.0001)
print(math.floor(a*c//100))

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


def main():
    a, b = [decimal.Decimal(i) for i in input().split()]
    ans = a * b
    print(int(ans))


if __name__ == '__main__':
    main()

Solution (Python):
A,B=input().split()
B1,B2=B.split('.')
print(int(A)*(int(B1)*100+int(B2))//100)

Solution (Python):
stdin = input().split()
a = int(stdin[0])
b = int(stdin[1][0] + stdin[1][2:])
if a == 0 or b == 0:
    print(0)
else:
    print(a * b // 100)

Solution (Python):
def main():
    from sys import setrecursionlimit, stdin
    from os import environ
    from collections import defaultdict, deque, Counter
    from math import ceil, floor, gcd
    from itertools import accumulate, combinations, combinations_with_replacement
    setrecursionlimit(10**6)
    dbg = (lambda *something: print(*something)) if 'TERM_PROGRAM' in environ else lambda *x: 0
    input = lambda: stdin.readline().rstrip()
    LMIIS = lambda: list(map(int,input().split()))
    II = lambda: int(input())
    P = 10**9+7
    INF = 10**9+10
    sa,sb = input().split()
    a = int(sa)
    b = int(float(sb)*100+0.1)
    print(a*b//100)

    
main()

Solution (Python):
A,B = map(str,input().split())
a = int(A)
b = int(B.replace(".",""))
ans = (a*b)//100
print(ans)

Solution (Python):
import heapq
from sys import stdin
from decimal import *
input = stdin.readline














     
def main():
    a,b = map(Decimal, input().split())

    print(int(a*b//1))
if __name__ == '__main__':
    main()

Solution (Python):
def main():
    A, B = input().replace('.','').split(' ')
    print(int(A)*int(B)//100)

if __name__ == "__main__":
    main()

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

A = int(A)
B = float(B)





B_by1000 = int(B*1000)
ans_by1000 = A*B_by1000
ans=ans_by1000//1000












print(str(ans))

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

b = float(b)
b = round(b*100)
a = int(a)
ans = (a*b)//100


print(ans)

Solution (Python):
a,b = map(str,input().split())
b = list(b)
del b[-3]
b = ''.join(b)
b = int(b)


ans = int(a)*b//100
print(int(ans))

Solution (Python):
import sys, re
from collections import deque, defaultdict, Counter
from math import ceil, sqrt, hypot, factorial, pi, sin, cos, tan, asin, acos, atan, radians, degrees, log2, gcd, floor
from itertools import accumulate, permutations, combinations, combinations_with_replacement, product, groupby
from operator import itemgetter, mul
from copy import deepcopy
from string import ascii_lowercase, ascii_uppercase, digits
from bisect import bisect, bisect_left
from heapq import heappush, heappop
from functools import reduce
def input(): return sys.stdin.readline().strip()
def INT(): return int(input())
def MAP(): return map(str, input().split())
def LIST(): return list(map(int, input().split()))
def ZIP(n): return zip(*(MAP() for _ in range(n)))
sys.setrecursionlimit(10 ** 9)
INF = float('inf')
mod = 10 ** 9 + 7

from decimal import *

def MAP(): return map(str, input().split())
a, b = MAP()
print(int(Decimal(a)*Decimal(b)))

Solution (Python):
import math
if __name__ == "__main__":
    a, b = input().split()

    a = int(a)
    b = float(b)

    b = int(100 * b + 0.4)
    print((a*b)//100)

Solution (Python):
def main():

    A, B = input().split()
    B = "".join(B.split('.'))
    A = int(A)
    B = int(B)
    return (A * B) // 100

if __name__ == '__main__':
    print(main())

Solution (Python):
def main():
    a, b = input().split()
    a = int(a)
    b1, b2 = map(int, b.split('.'))
    ans = a * ((b1 * 100) + b2)

    ans = ans // 100

    print(f'{ans}')


if __name__ == '__main__':
    main()

Solution (Python):
a, b = input().split()
a = int(a)
b = round(float(b) * 100)
print(a * b // 100)

Solution (Python):
a, b = input().split()
a = int(a)
bTop, bBottom = map(int, b.split('.'))
s = str(a * (bTop * 100 + bBottom))
if len(s) <= 2:
    print(0)
else:
    print(s[:-2])

Solution (Python):
a, b = input().split()
ans = int(a)*int(float(b)*100+0.01)
ans = ans//100
print(ans)

Solution (Python):
from decimal import *
A, B = map(Decimal, input().split())
print(int(A * B // 1))

Solution (Python):
a, b = map(float, input().split())
a = int(a)
b = int(b * 1000)
ans = a * b // 1000
print(int(ans))

Solution (Python):





















A,B = input().split()
A = int(A)
B = int(float(B)*10000)

B = round(B,-2)
ans = (A*B)//10000


print(int(ans))

Solution (Python):
a,b=map(int,input().replace('.', '').split())
print(a*b//100)

Solution (Python):
A, B = input().split()
A = int(A)
B = int(B.replace('.', ''))
print(A * B // 100)

Solution (Python):
a, b = map(float, input().split())
b *= 100
c = int(a) * int(b + 0.01)
print(c // 100)

Solution (Python):
a,b=input().split()
a=int(a)
intb=int(b[0])
flob=int(b[2:])
ans=(a*100*intb+a*flob)//100
print(ans)

Solution (Python):
from decimal import Decimal


def main():
    A, B = input().split()
    A = int(A)
    B = Decimal(B)
    print(int(A*B))


if __name__ == "__main__":
    main()

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

a = int(a)
b1,b2 = b.split(".")
ans = a * (int(b1)*100 + int(b2))

print(ans // 100)

Solution (Python):
import math
from decimal import *
a,b = input().split()
a = Decimal(a)
b = Decimal(b)

print(math.floor(a*b))

Solution (Python):
import decimal
a, b=input().split()
a, b=int(a), decimal.Decimal(b)
x=int(a*b)
print(x)

Solution (Python):
a, b = input().split()
a = int(a)
eps = 1e-10
b = float(b) + eps
b = int(b * 100)
ans = a * b
print(ans // 100)

Solution (Python):
import math
from decimal import *
a,b = input().split()
a = Decimal(a)
b = Decimal(b)
b = b*100
print(math.floor(a*b//100))

Solution (Python):
import math
a, b = list(input().split())
 
a = int(a)
f = [0, 0, 0]
f[0] = int(b[0])
f[1] = int(b[2])
f[2] = int(b[3])
 
x = (a*100*f[0] + a*10*f[1] + a*f[2])//100
print(x)

Solution (Python):
import math
from decimal import *
getcontext().prec = 100
a,b=input().split()
a=int(a)
A=Decimal(a)*Decimal(b)
print(math.floor(A))

Solution (Python):
A,B = input().split()
print(int(A) * int(float(B)*1000)//1000)

Solution (Python):
a,b=input().split()
a=int(a)
b=list(b)
b=[int(b[0]),int(b[2]),int(b[3])]
c=(a*b[0]*100+a*b[1]*10+a*b[2])//100
print(c)

Solution (Python):
import io,sys
sys.setrecursionlimit(10**6)

def main():
    s = sys.stdin.readline().rstrip().split()
    a = int(s[0])

    b = int(float(s[1])*100+0.1)

    print(a*b//100)
main()

Solution (Python):
import math
a,b = input().split()
a = int(a);
b = int(b.replace(".", ""));
ans = a * b //100;
print(ans)

Solution (Python):
import sys
import math
from collections import defaultdict
from bisect import bisect_left, bisect_right

sys.setrecursionlimit(10**7)
def input():
    return sys.stdin.readline()[:-1]

mod = 10**9 + 7

def I(): return int(input())
def LI(): return list(map(int, input().split()))
def LIR(row,col):
    if row <= 0:
        return [[] for _ in range(col)]
    elif col == 1:
        return [I() for _ in range(row)]
    else:
        read_all = [LI() for _ in range(row)]
        return map(list, zip(*read_all))



A,B = list(map(str, input().split()))
A = int(A)
B = 100*int(B[0])+10*int(B[2])+int(B[3])

print(A*B//100)

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

print(a*b//1000)

Solution (Python):
def LI():
    return list(map(float, input().split()))

a, b = LI()
a = int(a)
b *= 100
b = round(b)
def main():
    ans = a * b
    ans //= 100
    print(ans)

if __name__ == "__main__":
    main()

Solution (Python):
A,B=map(float,input().split(' '))
A=int(A)
B=int(B*1000)

res=str(A*B)

if len(res)<4:
	print(0)
else:
	print(res[:-3])

Solution (Python):
from decimal import Decimal 
a, b = map(str, input().split())
ans = int(a) * Decimal(b)
print(int(ans))

Solution (Python):
import sys
import math

readline = sys.stdin.readline
readall = sys.stdin.read
ns = lambda: readline().rstrip()
ni = lambda: int(readline().rstrip())
nm = lambda: map(int, readline().split())
nl = lambda: list(map(int, readline().split()))
prl = lambda x: print(*x ,sep='\n')

a,b = input().split(' ')
ash_1 = int(a[-1])
ash_2 = int(a[-2:])
bsh_1 = int(b[-2])
bsh_2 = int(b[-1])
bsh_0 = int(b[0])
kuri = (ash_1*bsh_1*10 + ash_2*bsh_2) //100
if len(a) == 1:
    res = int(a)*bsh_0 + kuri
elif len(a) == 2:
    a1 = a[:-1]
    res = int(a)*bsh_0 + int(a1)*bsh_1 + kuri
else:
    a1 = a[:-1]
    a2 = a[:-2]
    res = int(a)*bsh_0 + int(a1)*bsh_1 + int(a2)*bsh_2 + kuri
print(res)

Solution (Python):
import math



a,b = list(input().split())
a=int(a)
b=int(b[0]+b[2]+b[3])



print((a*b)//100)

Solution (Python):
a, b = map(float, input(). split())
a = int(a)
b = round(b*100)
print(a*b//100)

Solution (Python):
from decimal import *
a, b = input().split()
b = b.replace('.','')
ans = int(a) * int(b)
ans = ans//100
print (int(ans))

Solution (Python):
array=input().split()

A=int(array[0])
B=int(float(array[1])*1000)

ans=A*B

print(ans//1000)

Solution (Python):
import decimal
import math
a,b = list(map(decimal.Decimal, input().split()))
print(math.floor(a*b))

Solution (Python):
a,b=map(int,input().replace('.', '').split())
print(a*b//100)

Solution (Python):
import numpy as np
import scipy as sp
import math
 
a, b = map(str, input().split())
a = int(a)
b = int(float(b) * 100.001)
ans = int(a * b // 100)
print(ans)

Solution (Python):
import decimal

A, B = [decimal.Decimal(i) for i in input().split()]
print(int(A*B))

Solution (Python):
A,B = input().split()
print(int(A) * int(float(B)*1000)//1000)

Solution (Python):
a, b = map(float, input().split())
a = int(a)
b = int(b * 100 + 0.5)
ans = a * b // 100
print(int(ans))

Solution (Python):
import math
import pprint
import fractions
import collections
import itertools
from decimal import *
A,B=map(str,input().split())
A=int(A)
B=str(B)
num=int(B[0])*100+int(B[2])*10+int(B[3])

print((A*num)//100)

Solution (Python):
from decimal import Decimal
A,B=map(str,input().split())
A=Decimal(A)
B=Decimal(B)
ans=A*B
print(int(ans))

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


def solve(a, b):
    return a * (b * 100 + c) // 100


print(solve(a, b))

Solution (Python):
from decimal import Decimal
n,m = input().split()

print(int(n)*Decimal(m)//1)

Solution (Python):
a,b=input().split()
a=int(a)
b=int(float(b)*1000)
print(int(a*b//1000))

Solution (Python):

def resolve():
    a, b = input().split()
    a = int(a)
    b = int(float(b) * 100 + .5)
    
    ans = a*b
    print(ans//100)
if __name__ == "__main__":
    resolve()

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

a = int(a)
b = decimal.Decimal(b) * 100

print(a * b // 100)

Solution (Python):
import math
a, b = input().split()
a=int(a)
b=int(float(b)*1000)




ans=a*b

print(ans//1000)

Solution (Python):


import re
import math
from collections import defaultdict
from collections import deque
import collections
from fractions import Fraction
import bisect
from queue import PriorityQueue
import itertools
from copy import deepcopy
import random
import time
import os
import sys
import datetime
from functools import lru_cache
from functools import reduce
readline=sys.stdin.readline
sys.setrecursionlimit(2000000)
alphabet="abcdefghijklmnopqrstuvwxyz"
numbers="0123456789"
mod=int(10**9+7)
inf=int(10**19)
class Edge():
    def __init__(self,x,y,val=1):
        self.x=x
        self.y=y
        self.val=val
class unionfind():
    def __init__(self,n):
        self.n=n
        self.P=[a for a in range(n)]
        self.rank=[0]*n
 
    def find(self,x):
        if(x!=self.P[x]):
            self.P[x]=self.find(self.P[x])
        return self.P[x]
 
    def same(self,x,y):
        return self.find(x)==self.find(y)
 
    def link(self,x,y):
        if self.rank[x]<self.rank[y]:
            self.P[x]=y
        elif self.rank[y]<self.rank[x]:
            self.P[y]=x
        else:
            self.P[x]=y
            self.rank[y]+=1
 
    def unite(self,x,y):
        self.link(self.find(x),self.find(y))
 
    def size(self):
        S=set()
        for a in range(self.n):
            S.add(self.find(a))
        return len(S)
def yn(b):
    if b:print("yes")
    else:print("no")
def Yn(b):
    if b:print("Yes")
    else:print("No")
def YN(b):
    if b:print("YES")
    else:print("NO")
def ispow(a,b):
    now=b
    while now<a:
        now*=b
    return now==a
def getbin(num,size):
    A=[0]*size
    for a in range(size):
        if (num>>(size-a-1))&1==1:
            A[a]=1
        else:
            A[a]=0
    return A
def getfacs(n,mod_=0):
    A=[1]*(n+1)
    for a in range(2,len(A)):
        A[a]=A[a-1]*a
        if(mod_>0):A[a]%=mod_
    return A
def comb(n,r,mod,fac):
    if(n-r<0):return 0
    return (fac[n]*pow(fac[n-r],mod-2,mod)*pow(fac[r],mod-2,mod))%mod
def nextcomb(num,size):
    x=num&(-num)
    y=num+x
    z=num&(~y)
    z//=x
    z=z>>1
    num=(y|z)
    if(num>=(1<<size)):return False
    else:return num
def getprimes(n):
    if n==0:return []
    A=[True]*(n+1)
    A[0]=False
    A[1]=False
    for a in range(2,n+1):
        if A[a]:
            for b in range(a*2,n+1,a):
                A[b]=False
    ret=[]
    for a in range(n+1):
        if(A[a]):ret.append(a)
    return ret
def isprime(num):
    if(num<=1):return False
    i=2
    while i*i<=num:
       if(num%i==0):return False
       i+=1
    return True
def ifelse(bbool,ret1,ret2):
    if bbool:return ret1
    else:return  ret2
def join(A,c=" "):
    n=len(A)
    A=list(map(str,A))
    s=""
    for a in range(n):
        s+=A[a]
        if(a<n-1):s+=c
    return s
def factorize(n):
    b = 2
    ret=defaultdict(int)
    while b * b <= n:
        while n % b == 0:
            n //= b
            ret[b]+=1
        b+=1
    if n > 1:ret[n]+=1
    return ret
def pm(x):
    return x//abs(x)
def inputintlist(): 
    return list(map(int,input().split()))
def istanchouzouka(A):
    f=True
    prev=min(A)-1
    for a in A:
        if prev>=a:
            f=False
        prev=a
    return f
def istanchouhigensyou(A):
    f=True
    prev=min(A)-1
    for a in A:
        if prev>a:
            f=False
        prev=a
    return f
def getallsum(A):
    s=sum(A)
    dp=defaultdict(int)
    dp[0]=1
    for a in range(0,len(A)):
        for b in range(s,-1,-1):
            if b-A[a]>=0:
                dp[b]+=dp[b-A[a]]
    return dp
def yuukoutomukou(edges):
    ret=deepcopy(edges)
    for edge in edges:
        if not edge.x==edge.y:
            ret.append(Edge(edge.y,edge.x,edge.val))
    return ret
def dijkstra(edges,V,start):
    mincost=[inf]*V
    G=[[] for a in range(V)]
    for edge in edges:
        G[edge.x].append([edge.val,edge.y])
    Q=PriorityQueue()
    Q.put([0,start])
    while not Q.empty():
        nowcost,nowx=Q.get()
        if mincost[nowx]==inf:
            mincost[nowx]=nowcost
            for cost,y in G[nowx]:
                newcost=nowcost+cost
                Q.put([newcost,y])
    return mincost
def warshallfloyd(edges,V):
    mincost=[[inf for b in range(V)] for a in range(V)]
    for a in range(V):mincost[a][a]=0
    for edge in edges:
        mincost[edge.x][edge.y]=min(mincost[edge.x][edge.y],edge.val)
    for k in range(V):
        for s in range(V):
            for t in range(V):
                if mincost[s][k]==inf or mincost[k][t]==inf:continue
                mincost[s][t]=min(mincost[s][t],mincost[s][k]+mincost[k][t])
    return mincost
def bellemanford(edges,V,start):
    mincost=[inf]*V
    mincost[start]=0
    for _ in range(V):
        for edge in edges:
            if mincost[edge.x]==inf:continue
            mincost[edge.y]=min(mincost[edge.y],mincost[edge.x]+edge.val)
    return mincost
def ruisekiwa(A):
    ret=[0]*(len(A)+1)
    for a in range(len(A)):
        ret[a+1]=ret[a]+A[a]
    return ret
def getmd(x1,y1,x2,y2):
    return abs(x1-x2)+abs(y1-y2)
def geted(x1,y1,x2,y2):
    return math.sqrt((x1-x2)**2+(y1-y2)**2)
class fordfulkerson():
    def __init__(self,edges,V,s,t):
        self.V=V
        self.used=[False]*V
        self.G=[[] for a in range(V)]
        self.s=s
        self.t=t
        for edge in edges:
            self.G[edge.x].append({"x":edge.x,"y":edge.y,"cap":edge.val,"rev":len(self.G[edge.y])})
            self.G[edge.y].append({"x":edge.y,"y":edge.x,"cap":0,"rev":len(self.G[edge.x])-1})
    def dfs(self,v,t,f=inf):
        if v==t:return f
        self.used[v]=True
        for a in range(len(self.G[v])):
            x=self.G[v][a]["x"]
            y=self.G[v][a]["y"]
            cap=self.G[v][a]["cap"]
            rev=self.G[y][self.G[x][a]["rev"]]
            if self.used[y] or cap==0:continue
            f2=self.dfs(y,t,min(f,cap))
            if f2>0:
                self.G[v][a]["cap"]-=f2
                rev["cap"]+=f2
                return f2
        return 0
    def maxflow(self):
        flow=0
        while True:
            self.used=[False]*V
            zouka=self.dfs(self.s,self.t)
            if zouka==0:break
            flow+=zouka
        return flow




a,b=input().split()
b=b.replace(".","")
a=int(a)
b=int(b)
ans=a*b//100
print(ans)

Solution (Python):
from decimal import *
a, b = input().split()

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

print(int(A * B))

Solution (Python):
from sys import stdin, setrecursionlimit


def main():
    input = stdin.readline
    a, b = map(str, input().split())
    a = int(a)
    b = int(b[0] + b[2:])
    print((a * b) // 100)


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

Solution (Python):

a,b = input().split()
a = int(a)
b = float(b)
val = int((b * 1000)) 
new = (a * val)//1000 



print(new)

Solution (Python):
A, B = input().split()
A = int(A)
B = round(float(B) * 100)
print(A*B//100)

Solution (Python):
a, b = map(int, input().replace(".", "").split())
print(a*b//100)

Solution (Python):
A, B = input().split()
B = B.replace(".", "")
A, B = map(int, [A, B])
print(A * B // 100)

Solution (Python):


import sys

def resolve():
    a, b = sys.stdin.read().split()
    a = int(a); b = int(b.replace(".", ""))

    print(a*b//100)

if __name__ == "__main__":
    resolve()

Solution (Python):
a,b=map(float,input().split())
a=int(a)
b=int(round(b*100))
c=a*b
print(c//100)

Solution (Python):
import numpy as np 
A,B = map(str,input().split())
A = int(A)
B = int(B[0]+B[2]+B[3])
print(int(A*B//100))

Solution (Python):


iim = lambda: map(int, input().rstrip().split())

def resolve():
    a, b = input().split()
    a = int(a); b = int(b.replace(".", ""))

    print(a*b//100)

if __name__ == "__main__":
    resolve()

Solution (Python):
from decimal import Decimal
a, b = [str(i) for i in input().split()]
a = int(a) 
b = Decimal(b)



print(int(a*b))

Solution (Python):
a,b = input().split()
a = int(a)
b = int(b[0]+b[2]+b[3])
ans = a*b
ans = ans//100
print(ans)

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

A = int(A)
B = round(B * 100)

res = A * B // 100

print(res)

Solution (Python):
a,b = map(str,input().split())
b100 = int(b[0]) * 100 + int(b[2]) * 10 + int(b[3])


print((int(a)*b100)//100)

Solution (Python):



from math import *
from copy import *                    
from heapq import *                    
from string import *                
from random import *                
from bisect import *                
from sys import stdin                
from sys import maxsize                
from decimal import Decimal
from operator import *                
from itertools import *				  
from collections import Counter        
from collections import defaultdict 

'''
9990000000000000
9990000000000000
'''

def solve(l):
	a,b = l
	p = Decimal(a)*Decimal(b)
	return int(p)

l = list(map(str, stdin.readline().rstrip().split()))
ans = solve(l)
print(ans)

Solution (Python):


iim = lambda: map(int, input().rstrip().split())
from decimal import Decimal

def resolve():
    a, b = input().split()
    a = int(a); b = int(b.replace(".", ""))

    print(a*b//100)

if __name__ == "__main__":
    resolve()

Solution (Python):
from decimal import *
A,B = list(map(str,input().split()))
A = int(A)
B = Decimal(B)
print(int(A*B))

Solution (Python):
import decimal

a,b = input().split()
a = int(a)
c = b[0]+b[2:4]
c = int(c)

ans = a*c//100

print(int(ans))

Solution (Python):
import math
from decimal import Decimal

A, B = map(Decimal, input().split())
mul = A * B
mul2 = math.floor(mul)
print(mul2)

Solution (Python):

import math
from decimal import *

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

print(math.floor(Decimal(A)*Decimal(B)))

Solution (Python):
from decimal import Decimal 
a,b = input().split()
c = Decimal(b)
print(int(int(a)*c))

Solution (Python):
def main():
    from sys import setrecursionlimit, stdin
    from os import environ
    from collections import defaultdict, deque, Counter
    from math import ceil, floor, gcd
    from itertools import accumulate, combinations, combinations_with_replacement
    setrecursionlimit(10**6)
    dbg = (lambda *something: print(*something)) if 'TERM_PROGRAM' in environ else lambda *x: 0
    input = lambda: stdin.readline().rstrip()
    LMIIS = lambda: list(map(int,input().split()))
    II = lambda: int(input())
    P = 10**9+7
    INF = 10**9+10
    sa,sb = input().split()
    m = 10**18
    a = int(sa)
    b = int(float(sb)*m)
    print(a*b//m)

    
main()

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

A = int(A)
B = round(float(B) * 100.00)

ans = (A * B) // 100
print(ans)

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

b = b.replace(".", "")

print(a*int(b)//100)

Solution (Python):
a,b=input().split()
a=int(a)
b=int(b[0]+b[2:])
print(a*b//100)

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

ans = A*B + A*C//100
print(ans)

Solution (Python):
import math
from decimal import *
A, B = map(Decimal, input().split())
print(math.floor(A * B))

Solution (Python):
import math
from decimal import Decimal
x = input().split()
a = int(x[0])
b = Decimal(x[1])
b = b*100
b = int(b)
ans = a*b
ans = ans//100
print(int(ans))