結果
問題 | No.1097 Remainder Operation |
ユーザー |
👑 |
提出日時 | 2021-05-24 09:33:21 |
言語 | Lua (LuaJit 2.1.1734355927) |
結果 |
AC
|
実行時間 | 1,233 ms / 2,000 ms |
コード長 | 831 bytes |
コンパイル時間 | 324 ms |
コンパイル使用メモリ | 5,248 KB |
実行使用メモリ | 314,824 KB |
最終ジャッジ日時 | 2024-10-12 17:10:59 |
合計ジャッジ時間 | 15,604 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 21 |
ソースコード
local mfl, mce = math.floor, math.ceillocal n = io.read("*n")local a = {}for i = 0, n - 1 doa[i] = io.read("*n")endlocal up = {{}}local t = {{}}for i = 0, n - 1 dolocal dst = (i + a[i]) % nt[1][i] = dstup[1][i] = 1LL * mfl((i + a[i]) / n)end-- print(table.concat(t[1], " "))for i = 2, 45 dot[i] = {}up[i] = {}for j = 0, n - 1 dolocal z = t[i - 1][j]t[i][j] = t[i - 1][z]up[i][j] = up[i - 1][j] + up[i - 1][z]end-- print(table.concat(t[i], " "))endlocal q = io.read("*n")for iq = 1, q dolocal k = io.read("*n")local cur = 0local u = 0LLfor i = 1, 45 doif k == 0 then break endif k % 2 == 1 thenu = u + up[i][cur]cur = t[i][cur]endk = mfl(k / 2)endlocal z = u * n + curlocal zs = tostring(z):gsub("LL", "")print(zs)end