文字列を入力として、次のような文字列の1つ以上のバリアントを出力します。
- 元の位置にキャラクターがいない
- 最初に隣接していたキャラクターに隣接するキャラクターはありません
これは、指定された文字列に対して常に可能であり、単一の大文字のアルファベット文字のみを含むと想定できます([a-z]
または必要に[A-Z]
応じて)
同じ文字の重複は一意と見なされないことに注意してください。
たとえば、inputを指定するprogramming
と、出力にm
7番目または 8番目の文字を含めることはできずg
、4番目または 11番目の文字に含めることはできません(1インデックス付き)
例:
文字列を取る abcdef
有効な出力は次のとおりです。 daecfb
ただし、次のfdbcae
例は無効です。この例のようにc
、b
まだ隣接しています。
隣接関係はまた、あなたが行うことができなかったという意味、ラップfdbeca
などf
とa
まだ隣接しています。
テストケース:
指定された入力に対して有効な出力はこれらだけではないことに注意してください
として書かれたinput -> output
:
helowi -> ioewhl
mayube -> euabmy
stephens -> nhseespt
aabcdeffghij -> dbfhjfigaeca
得点:
これはコードゴルフなので、各言語で最少のバイトが勝ちます!
No character is adjacent to a character that it was originally adjacent to
。隣接関係では順序は関係ありませんか?それで、入力「abcd」はどこにも「ab」を持つことができず、「ba」を持つこともできません。