推导了一下,结论大概是:假如有m张牌,从0开始编号
按题目中的弃牌规则,
那么最后剩下的牌编号为 2*(m - 2^(k-1)) - 1,其中k满足:2^(k-1) < m <= 2^k
现在m=54n
所以最后剩下的牌编号为:108n - 2^k - 1,其中 k = floor(log2(108n))
是第 (108n - 2^k - 1) // 54 + 1 副牌中的第 (108n - 2^k - 1) % 54 + 1 号
针对特例简化一下,是第 2n - 2^k // 54 副牌中的第 54 - 2^k % 54 号,其中2^k是小于108n的最大的2的方幂
验证:
n=1时,2^k=64,是第1副牌中的第44号
n=2时,2^k=128,是第2副牌中的第34号
n=3时,2^k=256,是第2副牌中的第14号
--
FROM 222.128.31.*