RosettaCodeData/Task/Perfect-shuffle/Zkl/perfect-shuffle.zkl
2023-07-01 13:44:08 -04:00

9 lines
284 B
Text

fcn perfectShuffle(numCards){
deck,shuffle,n,N:=numCards.pump(List),deck,0,numCards/2;
do{ shuffle=shuffle[0,N].zip(shuffle[N,*]).flatten(); n+=1 }
while(deck!=shuffle);
n
}
foreach n in (T(8,24,52,100,1020,1024,10000)){
println("%5d : %d".fmt(n,perfectShuffle(n)));
}