解法一
将原数组进行升序排列,然后模拟约瑟夫问题的过程,从小到大依次将值加入。
import java.util.Arrays;class Solution {public int[] deckRevealedIncreasing(int[] deck) {int[] ans = new int[deck.length];Arrays.sort(deck);ans[0] = deck[0];int len = 1;int i = 1;int k = 0;while (len < deck.length) {if (ans[i] == 0) {k++;}if (k == 2) {ans[i] = deck[len];len++;k = 0;}i = (i + 1) % deck.length;}return ans;}}
