//简单的模拟.. //wengsht #include <iostream> #include <cstdio> #include <queue> using namespace std; int t,n,c[10],card; int no_count; queue<int> q[11]; int main() { //freopen("1.txt","r",stdin); scanf("%d",&t); for( int k = 1;k <= t;k++ ) { printf("Case %d:",k); no_count = 0; scanf("%d",&n); for( int i = 0;i <= n;i++ ) { c[i] = 1; while( !q[i].empty() ) q[i].pop(); } for( int i = 0;i < 52;i++ ) { scanf("%d",&card); q[0].push(card); } bool no_c = true; bool accomplish = false; while( no_count < 13*52 && !accomplish ) { accomplish = no_c = true; for( int i = 0;i < n;i++ ) { if( !q[i].empty() ) { accomplish = false; if( c[i] == q[i].front() ) { q[i+1].push(c[i]); no_c = false; } else q[i].push( q[i].front() ); c[i]++; q[i].pop(); if( c[i] == 14 ) c[i] = 1; } } if( no_c ) no_count++; else no_count = 0; } if( accomplish ) { for( int i = 0;i < n;i++ ) { if( c[i] == 1 ) c[i] = 13; else c[i]--; printf(" %d",c[i]); } printf("/n"); //printf("/b/n")贡献6次WA+TLE。。狂测试 } else printf(" unwinnable/n"); } return 0; }