ShortestPalindromicDecompositionLength
The fewest palindromic factors the word is a concatenation of.
✓ checked against that system · ! checked, with disagreements (hover a chip)FindStat
St000630via BinaryWord✓ShortestPalindromicDecompositionLength(word)The fewest palindromic factors the word is a concatenation of.Typed signatures
| Type | Package | Applies |
|---|---|---|
(binary_word) -> number | combinatorics | always |
Details
- Defined over
BinaryWordas an expression in_x, evaluated by compute-engine — the definition IS the implementation. - Takes a
BinaryWordand nothing else — it reads values against their positions, or walks the orbits, so it needs the bijection. Applying it to a bare list is a type error, not a wrong answer. - FindStat's St000630. The table holds the fewest pieces for each prefix.
Definition
Epsil, as the implementation runs it.
on BinaryWord, over _x
0 if Length(_x) < 1 else Apply((a_init: list<integer>) => Fold((
a: list<integer>,
b,
) => Apply(
(a_next: list<integer>) => a_next,
Join(
a,
[Min(Map(
Function(a[i + 1] +
1 if Max(Sum(Map(Function((_x[i + 1 +
(m - 1)] +
1) *
3 ^
(b - i -
m), m), Range(1, b - i, 1))), 0) ==
Max(Sum(Map(Function((_x[i + 1 +
(m - 1)] +
1) *
3 ^
(m - 1), m), Range(1, b - i, 1))), 0) else Length(_x) + 1, i),
Range(0, b - 1, 1),
))],
),
), a_init, Range(1, Length(_x))), [0])[Length(_x) + 1]Examples
Properties #
About
| Examples | 4 |
|---|---|
| Crosswalk | FindStat |