ultra-mega-enumerator
Version:
Ultra Mega Enumerator is a lightweight library designed to enumerate various combinatorial objects.
16 lines (15 loc) • 629 B
TypeScript
import { BitSet } from './BitSet';
import { Combination } from './Combination';
export declare class Composition extends Combination {
constructor(n: number);
getSum(): number;
static compositionFromBooleanArray(comp: boolean[]): Composition;
static compositionFromCombination(comb: Combination): Composition;
static compositionFromBitSet(x: BitSet): Composition;
getCompositionAsArray(): number[];
getCompositionAsCombination(): Combination;
degrade(): Composition;
partitionByEquality(): number[];
toString(): string;
static compositionRefinements(co: Composition): Composition[];
}