撲克牌一副有52張,一副新的撲克牌由上到下的順序是:黑桃A, 黑桃2,…, 黑桃Q, 黑桃K, 紅心A, …, 紅心 K, 梅花A, …,梅花K, 方塊A,…,方塊K,為了方便起見,我們以{1, 2, 3, …, 51, 52} 作為一副新的撲克牌由上到下的順序。
如果大家看過Liar game (詐欺遊戲),想必知道有一種叫做完美洗牌的洗牌方式,一開始洗牌的時候,會將撲克牌由上到下平分成兩堆,假設是第一次洗牌,則開始會分成{1, 2,…, 26}和{27, 28, …, 52}左右兩堆,一般洗牌是將撲克牌面朝下左右交錯的洗,之所以稱作為完美洗牌,代表他有以下的特性:
1. 同一堆的牌在洗完牌之後必定不會放在相鄰的位置,也就是洗牌每次都是左右各一張的交錯。
2. 每次洗牌的兩堆牌必定平分成等量的兩分
3. 左手邊是撲克牌上面的26張,右手是剩下的26張
4. 每次洗牌交錯時必定先從左邊開始
根據這樣的規則,一副新的撲克牌在第一次洗牌之後的順序會變成:
{27, 1, 28, 2, 29, 3, …, 51, 25, 52, 26}
我們沒有像Liar game一樣的心算能力,所以請你寫一個程式去計算一副新的撲克牌經過完美洗牌k(0 <= k <= 10,000,000) 次後,撲克牌的排列
第一行有一個正整數T (T < 30),代表接下來有幾筆測試資料
接下來T行,每行都有一個數字k (0 <= k <= 10,000,000),代表一副新的撲克牌經過k次的完美洗牌。
每筆測試資料各佔五行。
對於每筆測試資料,第一行輸出"Case i:"表第幾筆測資,接下來四行輸出經過k次完美洗牌後由上到下的排列順序,每13個數字一行。
在每一行中,相鄰兩個數字之間以一個空白隔開,第一個數字前面以及最後一個數字後面不可以有空白。