【分析】 不关心个人“当一个人向上走,另一人向下走而在楼道里相遇时,向上走的人将手中的箱子交给另一人,两人同时反向。”,可以看做仅仅是两人正常走过。如此不难看出2n-2步后,所有人会回到自己原来的位置,同时有k个箱子被放在n层,又有k个箱子在1层被拿走。
走完多次循环直至1层的箱子数小于k时开始模拟(虽然并不是完全暴力)。
如果1层箱子数为0,则再加上最下面一位抬箱子的人到n层的距离。
如果1层箱子数为d(d≠0),则算出所有人再从1层抱一个箱子的总距离,并排序加上第d大的距离。
使用您的 aoj 通用账户