พื้นหลัง
หมายเลข 1729 คือหมายเลข Hardy-Ramanujan คุณสมบัติที่น่าทึ่งของมันถูกค้นพบโดย S. Ramanujan (ผู้ซึ่งได้รับการยอมรับอย่างกว้างขวางว่าเป็นนักคณิตศาสตร์อินเดียที่ยิ่งใหญ่ที่สุด1 ) เมื่อ GH Hardy ได้ไปเยี่ยมเขาที่โรงพยาบาล ในคำพูดของฮาร์ดี:
ฉันจำได้ว่าเคยไปพบเขาเมื่อเขาป่วยที่ Putney ฉันขี่รถแท็กซี่หมายเลข 1729 และตั้งข้อสังเกตว่าหมายเลขนั้นดูเหมือนจะค่อนข้างน่าเบื่อและฉันหวังว่ามันจะไม่ใช่ลางร้าย "ไม่" เขาตอบ "มันเป็นตัวเลขที่น่าสนใจมากมันเป็นจำนวนที่เล็กที่สุดที่สามารถแสดงออกได้ว่าเป็นผลรวมของสองลูกบาศก์ในสองวิธีที่ต่างกัน"
นอกจากนั้นยังมีคุณสมบัติที่น่าอัศจรรย์อื่น ๆ อีกมากมาย หนึ่งในคุณสมบัติดังกล่าวคือมันเป็นหมายเลข Harshad นั่นคือผลรวมของตัวเลข (1 + 7 + 2 + 9 = 19) เป็นปัจจัยของมัน นั่นก็พิเศษเช่นกัน ดังที่ Masahiko Fujiwara แสดงให้เห็นว่า 1729 เป็นจำนวนเต็มบวกซึ่งเมื่อรวมตัวเลขเข้าด้วยกันจะสร้างผลรวมซึ่งเมื่อคูณด้วยการกลับรายการจะได้จำนวนเดิม:
1 + 7 + 2 + 9 = 19
19 × 91 = 1729
จำนวนเต็มบวกที่มีคุณสมบัติเช่นนี้คือสิ่งที่ฉันนิยามว่า Hardy-Ramanujan- ish Harshad Number สำหรับจุดประสงค์ของโพสต์นี้ (อาจมีศัพท์เทคนิคสำหรับมัน แต่ฉันหามันไม่ได้เว้นแต่ว่าเป็นสมาชิกของ A110921 )
งาน
รับค่าจำนวนเต็มบวกn
เป็นอินพุตเอาต์พุตเป็นค่าความจริงหรือความเท็จโดยขึ้นอยู่กับว่าอินพุตn
เป็นหมายเลข Harshad -Ramanujan- ish ของ Hardy-Ramanujan เอาท์พุทจริงถ้ามันเป็น มิฉะนั้นผลลัพธ์ที่ผิดพลาด
โปรดทราบว่าเพียงสี่ Hardy-Ramanujan- ishเบอร์ Harshad อยู่ ( 1
, 81
, 1458
และ1729
) และคุณสามารถเขียนโค้ดซึ่งการตรวจสอบสำหรับความเท่าเทียมกับพวกเขา แต่ฉันไม่คิดว่ามันจะสนุก
อินพุต
โปรแกรมของคุณควรใช้จำนวนเต็มบวก (จำนวนปกติหรือกล่าวอีกนัยหนึ่ง) มันอาจจะใช้วิธีการใด ๆ ยกเว้นสมมติว่ามันจะมีอยู่ในตัวแปร อนุญาตให้อ่านจากหน้าต่างโมดัลกล่องอินพุตบรรทัดคำสั่งไฟล์ ฯลฯ ได้ อนุญาตให้ป้อนค่าเป็นอาร์กิวเมนต์ของฟังก์ชันได้เช่นกัน
เอาท์พุต
โปรแกรมของคุณควรส่งออกค่าจริงหรือเท็จ พวกเขาไม่จำเป็นต้องสอดคล้องกัน โปรแกรมของคุณอาจส่งออกในทางใด ๆ ยกเว้นการเขียนผลลัพธ์ไปยังตัวแปร อนุญาตให้เขียนไปยังหน้าจอบรรทัดคำสั่งไฟล์ ฯลฯ return
อนุญาตให้ใช้เอาต์พุตด้วยฟังก์ชันได้เช่นกัน
กฎเพิ่มเติม
คุณต้องไม่ใช้บิวด์อินเพื่อทำงานให้สำเร็จ (ฉันสงสัยว่าภาษาใดจะมีบิวท์อินดังกล่าว แต่ก็ใช้Mathematica ... )
กรณีทดสอบ
Input Output
1 Truthy (because 1 × 1 (reverse of 1) = 1)
2 Falsey
3 Falsey
4 Falsey
5 Falsey
81 Truthy (because 9 (8 + 1) × 9 (reverse of 9) = 81)
1458 Truthy (because 18 (1 + 4 + 5 + 8) × 81 (reverse of 18) = 1458)
1729 Truthy (because 19 (1 + 7 + 2 + 9) × 91 (reverse of 19) = 1729)
1730 Falsey
2017 Falsey
เกณฑ์การชนะ
นี่คือโค้ดกอล์ฟดังนั้นโค้ดที่สั้นที่สุดในหน่วยไบต์ชนะ!
1 ทุกปีในวันที่ 22 ครั้งที่ธันวาคมวันเกิดของ Srinivasa Ramanujan ที่วันคณิตศาสตร์แห่งชาติเป็นที่สังเกตในอินเดีย เพื่อนร่วมงานของเขาที่อยู่ในเคมบริดจ์เปรียบเทียบเขากับจาโคบีออยเลอร์และแม้แต่นิวตัน นอกจากนี้ยังเป็นที่ดีเพื่อให้เขามีการฝึกอบรมเกือบจะไม่มีอย่างเป็นทางการในคณิตศาสตร์บริสุทธิ์แต่ยังคงทำให้เขามีส่วนร่วมสำคัญในการวิเคราะห์ทางคณิตศาสตร์ , ทฤษฎีจำนวน , ชุดอนันต์และfractions ต่อเนื่อง น่าเสียดายที่เขาเสียชีวิตเมื่ออายุ 32 ปีโดยมีการค้นพบทางคณิตศาสตร์หลายพันรายการในใจของเขา หนังก็ทำกับเขาซึ่งอยู่บนพื้นฐานประวัติของเขา ,คนที่รู้ไม่มีที่สิ้นสุด