プログラムの問題

入力ストリームと出力ストリームととn個のスタックがある。
n個のスタックを使って入力の順番を入れ替えて出力へ出すことを考える。

1ステップで次のことができるとする
(1)入力ストリームから一文字取り出しスタックへ積む
(2)スタックから一文字取り出しほかのスタックへ積む
(3)スタックから一文字取り出し出力ストリームへ出力する

n個のスタックを使うと入力k文字に対して任意の順番に入れ替えて出力できるとき
n個のスタックはk文字互換完備であるという。
ある定数cに対しc個のスタックが任意の有限の数mに対しm文字互換完備であるとき
c個のスタックは任意互換完備であるという。
任意互換完備となる定数cは存在するか?
存在するとしたらその最少の数はいくつか?