수상자 (14/09/14로 결정)
Markuz (Python)의 당첨 답변 -63 표
준우승 쿠 로이 네코 (PHP)에 의해 - 55 표를
소개
당신은 George Orwell 의 책 Nineteen Eighty-Four 의 세계에 있습니다.
귀하는 당사국의 프로그래머이며 텔레 스크린 용 프로그램을 작성해야합니다. 파티 메시지를 출력해야하며 아래 작업 1에 표시된 메시지를 선택했습니다. 그러나 최근에 당을 멸시하기 시작했으며 프로그램이 혁명을 일으키 길 원합니다. 따라서 프로그램에 "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 's Hobbies 에게 감사합니다 (현재 수정 됨).
if (year, month, day) < (2014, 9, 14): for line in lines: ...
?
??/
의 trigraph, 또는 'A'만을 또 다른 'a'처럼 보이지만 실제로는 러시아의 키릴 문자 'a'유니 코드 문자입니다