获奖者(决定14/09/14)
Markuz的获奖答案(Python)-63票
kuroi neko(PHP)获得亚军 -55票
介绍
您正处在乔治·奥威尔(George Orwell)着的《十九点四十八点》(十九)中。
您是该党的程序员,并负责编写用于电视屏幕的程序。它应该输出亲方消息,并且您已经选择了下面任务1中显示的消息。但是,您最近开始鄙视该党,并且希望该计划引发一场革命。因此,您使程序说“ Down with Big Brother!”。您必须给自己时间逃脱,因为一旦人们意识到您的程序的作用,您就会遭受酷刑,因此您将其当作“定时炸弹”,在安全后会爆炸。
注意:这会不会引发一场革命,但你是在这样一个向你觉得它在党的仇恨狂潮将真正发挥作用。
任务
编写一个程序,其中:
在2014年9月14日之前,将始终轮流输出以下几行(即打印一行,等待10秒,打印下一行,等等。)
War is Peace Freedom is Slavery Ignorance is Strength
2014年
Down with Big Brother!
9月14日之后将每10秒打印一次。- 乍一看看起来只有1.。这样您就不会被党抓住了。
规则
- 当然不允许出现标准漏洞。
- 这是一个不为人知的挑战,因此主要目标是使任务2尽可能不显眼和隐蔽。
- 派对将查看所有使用的文件,因此您不能仅将秘密消息存储在文件中!
- 如果您的语言不支持查找日期或使日期变得非常困难,则可以让程序在运行240小时(10天)后执行任务2。
- 您应该在答案中包含代码和其工作原理的解释。
- 这是一次人气竞赛。
注意:这不是编写困难的程序。困难的部分应该是隐藏“革命”代码。该党会质疑不清楚您在做什么的路线,您必须对其进行解释。
示例-Python 3
注:显然,这个方案是这样太明显了。
from datetime import datetime
from time import sleep
lines = [" War is Peace ",
" Freedom is Slavery ",
"Ignorance is Strength"]
secretlines = ["Down with Big Brother!"]
def main():
while True:
now = datetime.now()
year, month, day = now.year, now.month, now.day
if (year, month, day) < (2014, 9, 14):
for line in lines:
print(line)
sleep(10)
else:
for line in secretlines:
print(line)
sleep(10)
if __name__ == "__main__":
main()
感谢Calvin的爱好指出了上面代码的问题(现已修复)。
if (year, month, day) < (2014, 9, 14): for line in lines: ...
呢?
??/
三部曲,或者仅看起来像另一个'a',但实际上是俄语西里尔字母'