名もなき未知

エンジニアリングとか、日常とかそういうのをまとめる場所。

No.350 d=vt

No.350 d=vt - yukicoder

解法はこの2つになりそう。

  1. 文字列を分割して、10000倍して、整数で計算してから戻す。
  2. Decimalなどの任意精度演算ライブラリを使う


両方で解いてみました。Python3です。


整数で計算してから戻すパターン。

#81031 No.350 d=vt - yukicoder

v, t = input().split()
v = int(v[0]+v[2:])
print(v*int(t)//10000)


任意精度演算を使うパターン。

#82095 No.350 d=vt - yukicoder

from decimal import *

def solve():
    getcontext().prec = 25
    v, t = input().split()
    print(int(Decimal(v) * Decimal(t)))

if __name__=="__main__":
    solve()

Decimal便利だけど、速度面がやっぱり不安なので、いざって時だけにしておきたいですね。