Python 2.7
ในการตอบคำถามคุณต้องรู้คำถามและคำถามคือ:
คุณจะได้อะไรเมื่อคุณคูณหกด้วยเก้า ขอบคุณ TRiG สำหรับการแก้ไข
ดังนั้นDeep Thought จึงอาศัยการใช้ฐาน 13 :
6 13 x 9 13 = 42 13
เรานำเข้าค่าคงที่ของเรา:
from random import randrange as scrabbleBag, randint
from datetime import datetime,timedelta
life,universe,everything,nothing=6,9,1,-3
endOfTheUniverse = 80
นอกจากนี้เรายังกำหนดสิ่งต่าง ๆ ในโลกของเราเป็นถุงกระเบื้องข่วน , อาร์เธอร์ (คาดการณ์แม้ว่ามันจะแปลกเล็กน้อยคอมพิวเตอร์แปลก ๆ ), Trillian (นางเอกเหตุผลของเรา)
tile = lambda i: scrabbleBag(26)
arthur = lambda i: int(`i`,life+universe+everything+nothing)
trillian = lambda i: ''.join(map(str,divmod(i,life+universe+everything+nothing)))
เราแนะนำZaphod - endOfTheUniverse
การจัดเรียงแบบสุ่มซึ่งท้ายที่สุดก็ไหลออกมาจากไอน้ำในขณะที่เราอยู่ใกล้
zaphod = lambda : not(randint(0,(endOfTheUniverse-(datetime.now() - start).seconds)**3))
และMarvin the Paranoid Androidซึ่งมีทัศนคติเชิงบวกสามารถหยุดฝ่ายใดฝ่ายหนึ่ง:
marvin = lambda : endOfTheUniverse<(datetime.now() - start).seconds
และเรายังคงทำงานเหล่านี้ 4 ตัวอักษรผ่านการผสมผสานจนกว่าพวกเขาจะคำนวณมัน :
while answer is not life * universe * everything:
rack = sum(tile(i) for i in range(7))
answer = (zaphod or marvin) and arthur(rack)
print trillian(answer)
สมบูรณ์deepthought.py
:
from random import randrange as scrabbleBag, randint
from datetime import datetime,timedelta
life,universe,everything,nothing=6,9,1,-3
endOfTheUniverse = 80
tile = lambda i: scrabbleBag(26)
arthur = lambda i: int(`i`,life+universe+everything+nothing)
trillian = lambda i: ''.join(map(str,divmod(i,life+universe+everything+nothing)))
start = datetime.now()
zaphod = lambda: not(randint(0,(endOfTheUniverse-(datetime.now() - start).seconds)**3))
marvin = lambda: endOfTheUniverse<(datetime.now() - start).seconds
answer = None
while answer is not life * universe * everything:
rack = sum(tile(i) for i in range(7))
answer = (zaphod() or marvin()) and arthur(rack)
print trillian(answer)
การทำเช่นนี้น่าจะเสร็จสิ้นไปประมาณ 75 วินาทีโดยเสร็จภายใน 80 วินาที บางครั้งก่อนหน้านี้เพื่อที่จะ Zaphods ไม่มีที่สิ้นสุดเป็นไปไม่ได้ไดรฟ์
sleep(75);print("%d\n",41+1);