Lines Matching refs:permutation

473     uint32_t permutation =
508 // This is done with Lehmer code permutation, e.g. see
509 // http://stackoverflow.com/questions/1506078/fast-permutation-number-permutation-mapping-algorithms
518 permunreg[0] = permutation / 120; // 120 == 5!
519 permutation -= (permunreg[0] * 120);
520 permunreg[1] = permutation / 24; // 24 == 4!
521 permutation -= (permunreg[1] * 24);
522 permunreg[2] = permutation / 6; // 6 == 3!
523 permutation -= (permunreg[2] * 6);
524 permunreg[3] = permutation / 2; // 2 == 2!
525 permutation -= (permunreg[3] * 2);
526 permunreg[4] = permutation; // 1 == 1!
530 permunreg[0] = permutation / 120;
531 permutation -= (permunreg[0] * 120);
532 permunreg[1] = permutation / 24;
533 permutation -= (permunreg[1] * 24);
534 permunreg[2] = permutation / 6;
535 permutation -= (permunreg[2] * 6);
536 permunreg[3] = permutation / 2;
537 permutation -= (permunreg[3] * 2);
538 permunreg[4] = permutation;
541 permunreg[0] = permutation / 60;
542 permutation -= (permunreg[0] * 60);
543 permunreg[1] = permutation / 12;
544 permutation -= (permunreg[1] * 12);
545 permunreg[2] = permutation / 3;
546 permutation -= (permunreg[2] * 3);
547 permunreg[3] = permutation;
550 permunreg[0] = permutation / 20;
551 permutation -= (permunreg[0] * 20);
552 permunreg[1] = permutation / 4;
553 permutation -= (permunreg[1] * 4);
554 permunreg[2] = permutation;
557 permunreg[0] = permutation / 5;
558 permutation -= (permunreg[0] * 5);
559 permunreg[1] = permutation;
562 permunreg[0] = permutation;
566 // Decode the Lehmer code for this permutation of
689 uint32_t permutation =
724 // This is done with Lehmer code permutation, e.g. see
725 // http://stackoverflow.com/questions/1506078/fast-permutation-number-permutation-mapping-algorithms
734 permunreg[0] = permutation / 120; // 120 == 5!
735 permutation -= (permunreg[0] * 120);
736 permunreg[1] = permutation / 24; // 24 == 4!
737 permutation -= (permunreg[1] * 24);
738 permunreg[2] = permutation / 6; // 6 == 3!
739 permutation -= (permunreg[2] * 6);
740 permunreg[3] = permutation / 2; // 2 == 2!
741 permutation -= (permunreg[3] * 2);
742 permunreg[4] = permutation; // 1 == 1!
746 permunreg[0] = permutation / 120;
747 permutation -= (permunreg[0] * 120);
748 permunreg[1] = permutation / 24;
749 permutation -= (permunreg[1] * 24);
750 permunreg[2] = permutation / 6;
751 permutation -= (permunreg[2] * 6);
752 permunreg[3] = permutation / 2;
753 permutation -= (permunreg[3] * 2);
754 permunreg[4] = permutation;
757 permunreg[0] = permutation / 60;
758 permutation -= (permunreg[0] * 60);
759 permunreg[1] = permutation / 12;
760 permutation -= (permunreg[1] * 12);
761 permunreg[2] = permutation / 3;
762 permutation -= (permunreg[2] * 3);
763 permunreg[3] = permutation;
766 permunreg[0] = permutation / 20;
767 permutation -= (permunreg[0] * 20);
768 permunreg[1] = permutation / 4;
769 permutation -= (permunreg[1] * 4);
770 permunreg[2] = permutation;
773 permunreg[0] = permutation / 5;
774 permutation -= (permunreg[0] * 5);
775 permunreg[1] = permutation;
778 permunreg[0] = permutation;
782 // Decode the Lehmer code for this permutation of