結果
問題 | No.1201 お菓子配り-4 |
ユーザー |
👑 |
提出日時 | 2021-07-28 12:57:21 |
言語 | Lua (LuaJit 2.1.1734355927) |
結果 |
TLE
|
実行時間 | - |
コード長 | 851 bytes |
コンパイル時間 | 195 ms |
コンパイル使用メモリ | 6,816 KB |
実行使用メモリ | 13,888 KB |
最終ジャッジ日時 | 2024-09-13 09:07:20 |
合計ジャッジ時間 | 10,344 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 2 TLE * 1 -- * 33 |
ソースコード
local function floorSum(n, m, a, b) local ans = 0LL while true do if m <= a then ans = ans + ((n - 1LL) * n / 2LL) * (a / m) a = a % m end if m <= b then ans = ans + n * (b / m) b = b % m end local ymax = (a * n + b) / m local xmax = ymax * m - b if ymax == 0 then break end ans = ans + (n - (xmax + a - 1LL) / a) * ymax n, m, a, b = ymax, a, m, (a - xmax % a) % a end return ans end local n, m = io.read("*n", "*n") local a, b = {}, {} for i = 1, n do a[i] = io.read("*n") * 1LL end for i = 1, m do b[i] = io.read("*n") * 1LL end local mod = 1000000007LL local ret = 0LL for i = 1, n do for j = 1, m do local v = floorSum(b[j] + 1, b[j], a[i], 0LL) v = v % mod ret = (ret + v) % mod end end ret = (ret + ret) % mod ret = tostring(ret):gsub("LL", "") print(ret)