結果
| 問題 |
No.1980 [Cherry 4th Tune D] 停止距離
|
| コンテスト | |
| ユーザー |
👑 |
| 提出日時 | 2022-06-23 23:23:49 |
| 言語 | Lua (LuaJit 2.1.1734355927) |
| 結果 |
AC
|
| 実行時間 | 322 ms / 3,000 ms |
| コード長 | 820 bytes |
| コンパイル時間 | 147 ms |
| コンパイル使用メモリ | 5,120 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-11-07 17:24:16 |
| 合計ジャッジ時間 | 10,173 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 27 |
ソースコード
local mfl, mce = math.floor, math.ceil
local q = io.read("*n", "*l")
for iq = 1, q do
local t1, t2, mu1, mu2, l1, l2 = io.read():
match("(%d+)%.(%d%d) (%d+)%.(%d%d) (%d+)%.(%d%d)")
local t = tonumber(t1) * 100 + t2
local mu = tonumber(mu1) * 100 + mu2
local l = tonumber(l1) * 100 + l2
-- print(t, mu, l)
local safe = 0
local out = 510001
while 1 < out - safe do
local mid = mfl((safe + out) / 2)
--[[
mid/360 * t/100 + mid/360 * mid/360 / 20 / (mu/100) <= l/100
]]
if 18 * mid * t * mu + 25*mid * mid <= mu * 18*360*l then
safe = mid
else
out = mid
end
end
if safe < 10 then
print("0.0" .. safe)
elseif safe < 100 then
print("0." .. safe)
else
local b = string.format("%02d", safe % 100)
print(mfl(safe / 100) .. "." .. b)
end
end