คุณกำลังท้าทายคือการเขียน 5 โปรแกรมที่แตกต่างกันสำหรับงาน 5 อย่างต่อไปนี้:
พิมพ์
Hello, World!
รับอินพุตด้วย STDIN ส่งออกแฟคทอเรียลคุณสามารถสมมติว่าอินพุตเป็นจำนวนเต็ม> = 0
รับจำนวนเต็ม N คำนวณผลรวมของจำนวนเฉพาะ <= N
กำหนดอินพุตด้วย STDIN เอาท์พุทตัวอักษรที่ใช้ในอินพุต ตัวอย่างเช่นการป้อนข้อมูลที่เป็นคุณจะต้องเอาท์พุท
Hello world
helowrd
โปรดทราบว่าการส่งออกเป็นตัวพิมพ์เล็ก คุณสามารถสันนิษฐานได้ว่าอินพุตนั้นเป็นตัวอักษรเสมอกับ whitespaces และ whitespaces จะถูกละเว้นเอาท์พุทเพชรต่อไปนี้แบบนี้
* *** ***** ******* ***** *** *
ความท้าทายเหล่านี้ทั้งหมดอาจเป็นเรื่องง่าย แต่ก็มีการจับ จดหมายทั้งหมดที่คุณใช้ไม่สามารถใช้อีกครั้งในโปรแกรมอื่น นี้ไม่ได้ห้าม แต่จะทำให้คุณโทษของ8 ไบต์ ตัวอย่างเช่นหากนี่เป็นโปรแกรมของคุณสำหรับงานแรก:
print("Hello, World!");
แล้วคุณจะไม่สามารถใช้ตัวอักษรต่อไปนี้ (ตัวพิมพ์ใหญ่หรือรูปแบบตัวพิมพ์เล็ก): p
, r
, i
, n
, t
, h
, e
, l
, o
, w
, d
ในโปรแกรมอื่น ๆ ถ้าคุณต้องใช้มันคุณสามารถ 'ซื้อ' ตัวอักษรแต่ละตัวเป็นจำนวน 8 ไบต์ ดังนั้นหากคุณต้องการใช้จดหมายl
อีกครั้งในโปรแกรมอื่นคุณจะได้รับโทษ 8 ไบต์ หลังจากที่คุณชำระค่าปรับแล้วคุณสามารถใช้ตัวอักษรแต่ละตัวได้มากเท่าที่คุณต้องการในโปรแกรมนี้ ตัวละครอื่น ๆ ไม่สำคัญ นอกจากนี้โปรแกรมทั้ง 5 ควรเป็นภาษาเดียวกัน
นี่คือรหัส - กอล์ฟจำนวนไบต์น้อยที่สุดจึงจะชนะ!