在一个文件中,编写不需要输入且不会产生输出的程序。运行时,无论名称是什么,它都应该反转其中包含的文件的名称,而无需更改代码或不会产生其他持久的副作用。
任何实现此目的的方法都可以。唯一重要的是,一旦程序运行,唯一的持久更改就是其文件名已被颠倒。例如,目录中不应有新文件。
再次运行该程序应将名称反向。实际上,该程序应该能够任意运行多次。
就此挑战而言:
- 您可能会假设文件名始终是长度在1到127个字符之间的小写字母(az)字符串。(如果您的语言要求文件具有扩展名才能运行,则只需反转扩展名之前的部分即可,例如
mycode.bat
→edocym.bat
。) - 您可能会认为代码文件本身位于目录中,因此它不会有命名冲突(除了自身)。
- 您可能不会假定文件名不是回文,即取反后的名称相同。回文的文件名应该和不一样的文件名一起工作。
- 您可以阅读文件的内容或元数据。此处没有藜麦限制。
- 您可能会假设您的程序将在特定的,现代的,常见的操作系统(例如Windows / Linux)上运行,因为并非所有外壳程序都具有相同的命令集。
举一个具体的例子,假设您有一个Python程序
mycode
位于其自己目录中的文件 中。跑步python mycode
在终端中应导致文件名被反转为
edocym
。该文件edocym
应仅位于其目录中-不再mycode
存在任何命名的文件。跑步python edocym
会将名称改回
mycode
,此时可以无限期重复此过程。如果相同的Python文件已重命名
racecar
(不更改代码),然后运行python racecar
由于“赛车”是回文,因此没有任何明显的变化。如果文件名是
a
或,也是如此xx
。
以字节为单位的最短代码获胜。决胜局是最高投票的答案。