名もなき未知

エンジニアリングとか、日常とかそういうのをまとめる場所。アクセス解析のためGAを利用、Googleに情報を送信しています。商品紹介のためAmazonアフィリエイトを利用、Amazonに情報を送信しています。記事に関しては私が書いていない引用文を除いて自由にご利用ください。

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便利だけど、速度面がやっぱり不安なので、いざって時だけにしておきたいですね。