สูครทั่วไปสำหรับการคำนวณนี้คืออะไรครับ
|
ปัญหานี้ใช้ความรู้ทางทฤษฎีจำนวนก็น่าจะเพียงพอ...
แต่ความยากน่าจะอยู่การเขียนอัลกอลิทึมที่กระทัดรัดและใช้งานได้จริงมากกว่าครับ |
ระเบียบวิธีหนึ่ง(ซ่อนไม่เป็นนะครับ)
1.แบ่งเลข10หลักให้เป็น2ซีก ซีกละ5หลักและเรียงลำดับตามแนวกลางที่แบ่งคล้ายๆการพับหนังสือเช่น $a_5a_4a_3a_2a_1|a'_1a'_2a'_3a'_4a'_5$ 2.สร้างเลข$b_1คือเศษของการหารa_1ด้วย11$ ...$b_2คือเศษของการหาร(a_1+a_2)ด้วย11$ ...หรือ$b_3คือเศษของการหาร(a_1+a_2+a_3)ด้วย11$ รวมทั้ง$b_4และb_5$ด้วยหลักการเดียวกัน 3.สร้างเลข$b'_1,b'_2b'_3และb'_4และb'_5$ซึ่งเป็นซีกขวาก็ทำเช่นเดียวกับซีกซ้าย 4.สร้างเลข$c_1,c_2,c_3,c_4และc_5$มาจาก$b_1,b_2,b_3,b_4และb_5$ด้วยหลักการเดียวกันที่สร้าง$b_nขึ้นมาจากa_n$ 5.สำหรับ$c'_nของซีกขวาก็สร้างมาจากb'_nเช่นเดียวกัน$ 6.หาเลขหลักที่10โดยใช้สมการ...$c_5=c'_5$ หรือสรุปเป็นอัลกอลิทึมคือ... $$a_5a_4a_3a_2a_1|a'_1a'_2a'_3a'_4a'_5$$ $$b_5b_4b_3b_2b_1|b'_1b'_2b'_3b'_4b'_5$$ $$c_5c_4c_3c_2c_1|c'_1c'_2c'_3c'_4c'_5$$ โดย $$b_n=เศษของการหาร\sum_{i= 1}^{n} a_iด้วย11,n=1,2,3,4,5$$ $$c_n=เศษของการหาร\sum_{i = 1}^{n}b_iด้วย11 ,n=1,2,3,4,5$$ $$c_5=c'_5$$ |
เวลาที่แสดงทั้งหมด เป็นเวลาที่ประเทศไทย (GMT +7) ขณะนี้เป็นเวลา 03:11 |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Modified by Jetsada Karnpracha