結果
問題 | No.25 有限小数 |
ユーザー |
👑 |
提出日時 | 2020-04-26 16:50:31 |
言語 | Lua (LuaJit 2.1.1734355927) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 806 bytes |
コンパイル時間 | 507 ms |
コンパイル使用メモリ | 5,376 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-17 12:43:43 |
合計ジャッジ時間 | 1,605 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 31 |
ソースコード
local ffi = require("ffi") local C = ffi.C ffi.cdef[[ long long atoll(const char*); ]] local function lltonumber(str) return C.atoll(str) end local n = io.read() n = lltonumber(n) local m = io.read() m = lltonumber(m) while m % 10LL == 0LL do m = m / 10LL end while n % 10LL == 0LL do n = n / 10LL end while n % 2LL == 0LL and m % 2LL == 0LL do n = n / 2LL m = m / 2LL end while n % 5LL == 0LL and m % 5LL == 0LL do n = n / 5LL m = m / 5LL end local m2, m5 = 0, 0 while m % 2LL == 0LL do m2 = m2 + 1 m = m / 2LL end while m % 5LL == 0LL do m5 = m5 + 1 m = m / 5LL end if n % m ~= 0LL then print(-1) os.exit() end n = n / m if 0LL < m2 then print(5) os.exit() end n = n % 10LL n = tostring(n):gsub("LL", "") n = tonumber(n) for i = 1, m5 do n = (n * 2) % 10 end print(n)