単一のファイルに、入力を必要とせず、出力も生成しないプログラムを作成します。実行すると、コードが変更されたり、その他の永続的な副作用が発生したりすることなく、名前が何であるかに関係なく、含まれているファイルの名前が逆になります。
これを達成する方法はどれでも結構です。プログラムが実行されると、唯一の永続的な変更は、そのファイル名が逆になっていることだけです。たとえば、ディレクトリに新しいファイルを配置しないでください。
プログラムを再度実行すると、名前が逆になります。実際、プログラムは何度でも任意に実行できるはずです。
この課題のために:
- ファイル名は、常に1〜127文字の小文字(az)の文字列であると想定できます。(実行するために拡張子がファイルに必要な場合は、拡張子の前の部分を逆にします。例:
mycode.bat
→edocym.bat
- コードファイルはそれ自体がディレクトリにあるため、名前の競合はありません(それ自体を除く)。
- あなたはありません逆にするときと同じつまり、ファイル名は回文ではないと仮定します。パリンドロームであるファイル名は、そうでないファイル名と同じように機能するはずです。
- ファイルのコンテンツまたはメタデータを読むことができます。ここに馬の制限はありません。
- すべてのシェルに同じコマンドセットがあるわけではないため、プログラムは特定の最新の一般的なオペレーティングシステム(Windows / Linuxなど)で実行されると仮定できます。
具体的な例として、
mycode
独自のディレクトリで呼び出されるファイルにPythonプログラムがあるとします 。ランニングpython mycode
ターミナルでは、ファイル名がに逆になるはず
edocym
です。ファイルedocym
はディレクトリ内で単独である必要があります-指定されたファイルmycode
はもう存在しないはずです。ランニングpython edocym
名前をに戻し
mycode
、その時点でプロセスを無期限に繰り返すことができます。
racecar
(コードを変更せずに)同じPythonファイルの名前を変更してから実行した場合python racecar
「レースカー」はパリンドロームであるため、目に見える変化はありません。ファイル名が、たとえば、
a
またはの場合も同様xx
です。
バイト単位の最短コードが優先されます。Tiebreakerは、より高い投票数の回答です。