Mental Model
We want to split a word into parts where each part reads the same forwards and backwards. We try all ways to cut the word and keep only the good ones.
Analogy: Imagine cutting a chocolate bar into pieces where each piece is perfectly symmetrical. You try every possible way to break it and keep the symmetrical pieces only.
s = "a b a c"
Partitions: ["a", "b", "a", "c"]
["a", "b", "a c"] (invalid)
["aba", "c"]
↑ start here, try cuts