結果
問題 | No.690 E869120 and Constructing Array 4 |
ユーザー |
👑 |
提出日時 | 2020-03-28 15:52:54 |
言語 | Lua (LuaJit 2.1.1734355927) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 756 bytes |
コンパイル時間 | 188 ms |
コンパイル使用メモリ | 7,076 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2025-01-02 11:38:40 |
合計ジャッジ時間 | 1,605 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 19 |
ソースコード
local bls, brs = bit.lshift, bit.rshiftlocal k = io.read("*n")if k == 0 then print("2 0")elseif k == 1 then print("2 1\n1 2")elseif k == 2 then print("3 3\n1 2\n2 3\n1 3")elselocal n = 2local mul = 1while mul < k domul = mul * 2n = n + 1endlocal ary = {}for i = 2, n dotable.insert(ary, {1, i})endfor i = 3, n - 1 dofor j = i + 1, n dotable.insert(ary, {i, j})endendlocal rem = k - bls(1, n - 3)for i = 3, n - 1 dolocal v = bls(1, n - 1 - i)if v <= rem thentable.insert(ary, {2, i})rem = rem - vendendif 0 < rem thentable.insert(ary, {2, n})endprint(n .. " " .. #ary)for i = 1, #ary doprint(ary[i][1] .. " " .. ary[i][2])endend