ตรรกะไตรภาคที่สมดุล
ternary เป็นปกติอีกชื่อหนึ่งของฐานที่ 3 กล่าวคือแต่ละหลักคือ0
, 1
หรือ2
และแต่ละสถานที่มีมูลค่า 3 เท่าของสถานที่ถัดไป
Balanced Ternary เป็นการปรับเปลี่ยน Ternary ซึ่งใช้หลักของ-1
, 0
และ1
. นี่คือข้อดีของการไม่ต้องมีเครื่องหมาย แต่ละสถานที่ยังคงมีค่า 3 เท่าของสถานที่ต่อไป ครั้งแรกจำนวนเต็มบวกไม่กี่จึง[1]
, [1, -1]
, [1, 0]
, [1, 1]
, [1, -1, -1]
ในขณะที่ไม่กี่ครั้งแรกจำนวนเต็มลบ[-1]
, [-1, 1]
, [-1, 0]
, ,[-1, -1]
[-1, 1, 1]
x, y, z
คุณมีสามปัจจัยการผลิต z
อย่างใดอย่างหนึ่ง-1
, 0
หรือ1
ในขณะที่x
และy
อาจได้มาจาก-3812798742493
การ3812798742493
รวม
ขั้นตอนแรกคือการแปลงx
และy
จากทศนิยมเป็นไตรภาคที่สมดุล สิ่งนี้จะทำให้คุณ 27 trits (TeRnary digITS) จากนั้นคุณจะต้องรวมการคำนวณจากx
ทั้งy
คู่และคู่โดยใช้การดำเนินการแบบไตรภาคแล้วแปลงผลลัพธ์กลับเป็นทศนิยม
คุณสามารถเลือกค่าของz
แผนที่สำหรับหนึ่งในสามของการดำเนินการประกอบไปด้วย:
A
: รับสอง trits หากเป็นศูนย์ผลลัพธ์จะเป็นศูนย์มิฉะนั้นผลลัพธ์จะเป็น -1 หากพวกเขาต่างกันหรือ 1 ถ้าพวกเขาเหมือนกันB
: กำหนดสอง trits หากเป็นศูนย์ผลลัพธ์จะเป็น trit อื่นมิฉะนั้นผลลัพธ์จะเป็นศูนย์หากมีความแตกต่างหรือการปฏิเสธหากพวกเขาเหมือนกันC
: รับสอง trits ผลลัพธ์จะเป็นศูนย์หากพวกเขาแตกต่างหรือมูลค่าของพวกเขาหากพวกเขาเหมือนกัน
ตัวอย่าง. สมมติว่าx
เป็น29
และเป็นy
15
ใน ternary สมดุลเหล่านี้กลายเป็นและ[1, 0, 1, -1]
[1, -1, -1, 0]
(ส่วนที่เหลืออีก 23 ศูนย์ถูกทิ้งให้สั้นลง) หลังจากการดำเนินการแต่ละอย่างเสร็จสิ้นพวกเขาจะกลายเป็นA
: [1, 0, -1, 0]
, B
: [-1, -1, 0, -1]
, C
:: [1, 0, 0, 0]
. แปลงกลับไปเป็นทศนิยมผลลัพธ์ที่24
, -37
และ27
ตามลำดับ ลองใช้การอ้างอิงต่อไปนี้สำหรับตัวอย่างเพิ่มเติม:
การใช้การอ้างอิงนั้นทำตามขั้นตอนที่ให้ไว้ข้างต้น แต่แน่นอนว่าคุณสามารถใช้อัลกอริทึมใดก็ได้ที่ให้ผลลัพธ์เหมือนกัน
นี่คือโค้ดกอล์ฟดังนั้นโปรแกรมหรือฟังก์ชั่นที่สั้นที่สุดที่ละเมิดช่องโหว่มาตรฐานไม่ชนะ!
z
ต้องเป็นหนึ่งใน-1,0,1
หรือเราสามารถเลือกค่าที่สอดคล้องกันและแตกต่างกันสามค่า? ฉันเลือก1,2,3
คำตอบแล้วและมีความสับสนบ้าง