結果
問題 |
No.267 トランプソート
|
ユーザー |
👑 |
提出日時 | 2019-05-05 00:45:14 |
言語 | Lua (LuaJit 2.1.1734355927) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 583 bytes |
コンパイル時間 | 77 ms |
コンパイル使用メモリ | 6,940 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-23 14:02:42 |
合計ジャッジ時間 | 1,026 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 |
ソースコード
local ior = io.input() local n = ior:read("*n", "*l") local str = ior:read() local cards = {} local marks = {} marks.D, marks.C, marks.H, marks.S = 1, 2, 3, 4 local nums = {} nums.A, nums.T, nums.J, nums.Q, nums.K = 1, 10, 11, 12, 13 for i = 2, 9 do nums[tostring(i)] = i end for val in str:gmatch("%w[%d%w]") do table.insert(cards, val) end table.sort(cards, function(x, y) local xm = marks[x:sub(1, 1)] local xn = nums[x:sub(2, 2)] local ym = marks[y:sub(1, 1)] local yn = nums[y:sub(2, 2)] return (xm * 15 + xn) < (ym * 15 + yn) end) print(table.concat(cards, " "))