べき乗和はの値に関わらず奇数と偶数を交互に足すので、総和は奇、奇、偶、偶、奇、奇、……となる。総和が奇/偶の時の自明な下限がそれぞれ1/0なので、これを達成できれば最善となる。実験してみると、が十分に大きければ常に下限が達成できるという予想が立つ。
の場合、長さ4の区間はとわければよくて、がの倍数ならこれに従って等分できる。倍数でない場合もそれぞれ4つずつ等分した後、残りを適当にわければよい。
について。また実験すると、長さ8の区間はで等分できることがわかるので、が小さい場合の構成を列挙した上で、以降は個ずつ等分すればよい。
の場合も常に等分できるような長さの区間が見つかれば解決しそうだ。
の場合は長さ16の区間はで等分できる。(ここでようやく、ひとつ小さい次数で得た列をflipしてくっつければよいことに気づく。)やはりが小さい場合を列挙して、以降は個ずつ等分すればよい。も同様で、長さ32の区間をで等分できる。
さて、が小さい場合の解を用意する必要があるのだが、明らかにIPソルバで解けるのでOR-ToolsのCP-SATを使った。までは愚直でいいとして、はDPや半分全列挙でも簡単ではないように見える。(ちゃんと考えていない)