ดูหนึ่งข้อความ
  #20  
Old 29 พฤษภาคม 2005, 17:06
nongtum's Avatar
nongtum nongtum ไม่อยู่ในระบบ
ผู้พิทักษ์กฎทั่วไป
 
วันที่สมัครสมาชิก: 10 เมษายน 2005
ข้อความ: 3,246
nongtum is on a distinguished road
Post

อ้างอิง:
ข้อความเดิมของคุณ TOP:
หากพวกเขาได้รับปัญหาใหม่เป็น
  1. มีถังน้ำ 2 ใบ ความจุ 3 และ 7 แกลลอน พวกเขาจะต้องตวงน้ำ 5 แกลลอน
  2. มีถังน้ำ 2 ใบ ความจุ 4 และ 6 แกลลอน พวกเขาจะต้องตวงน้ำ 5 แกลลอน
  3. มีถังน้ำ 2 ใบ ความจุ 5 และ 9 แกลลอน พวกเขาจะต้องตวงน้ำ 7 แกลลอน
  4. มีถังน้ำ 2 ใบ ความจุ 6 และ 10 แกลลอน พวกเขาจะต้องตวงน้ำ 7 แกลลอน
พวกเขาจะรู้ได้อย่างไรว่า ปัญหาใดไม่มีทางแก้ได้สำเร็จ จะได้ไม่ถูกผู้ร้ายหลอกให้เสียเวลาแก้ปัญหาจนตายโดยไม่รู้เรื่อง
เมื่อมีถังความจุ a และ b แกลลอน ต้องการน้ำ c แกลลอน ข้อนี้ถามว่า สมการ Diophantine ax+by=c สามารถแก้หา x,y ออกมาเป็นจำนวนเต็มได้หรือไม่ ซึ่งสมการนี้แก้ได้ ก็ต่อเมื่อ (a,b)|c อันหมายถึง หากพระเอกดวงซวยเจอปัญหาที่สองและสี่ ไม่หาทางกำจัดระเบิด ก็ตัวใครตัวมันละครับ ส่วนวิธีการตวงน้ำในข้อที่เหลือ ทำได้ดังนี้

3,5 แกลลอน เอา 4 แกลลอน
เนื่องจาก 5(2)+3(-2)=4 ตอนแรกก็ตักน้ำด้วยถังห้าแกลลอนก่อน แล้วเทน้ำจากถังห้าแกลลอนลงสามแกลลอน แล้วทิ้งน้ำในถังสามแกลลอนทิ้ง แล้วเทสองแกลลอนที่เหลือในถังห้าแกลลอนลงในถังสามแกลลอน ตวงน้ำในถังห้าแกลลอนอีกที เทน้ำอีกหนึ่งลิตรจากถังห้าแกลลอนลงถังสามแกลลอน แล้วก็รีบเอาน้ำในถังห้าแกลลอนไปวางบนตาชั่ง
3,7 แกลลอน เอา 5 แกลลอน
เนื่องจาก 3(4)+7(-1)=5 ตอนแรกก็ตักน้ำด้วยถังสามแกลลอนสามครั้งเติมถังเจ็ดแกลลอน แล้วเทน้ำในถังเจ็ดแกลลอนทิ้ง จากนั้นเทน้ำที่เหลือสองแกลลอนในถังสามแกลลอนลงในถังเจ็ดแกลลอน แล้วก็ตวงน้ำอีกสามแกลลอนเติมในถังเจ็ดแกลลอน แล้วรีบเอาไปชั่ง
5,9 แกลลอน เอา 7 แกลลอน
เนื่องจาก 5(-4)+9(3)=7 ตอนแรกเทน้ำจากถังเก้าแกลลอนลงในถังห้าแกลลอน เทห้าแกลลอนทิ้งก่อน เติมสี่แกลลอนที่เหลือลงถังห้าแกลลอนอีกที ตวงถังเก้าแกลลอนใหม่ เติมถังห้าแกลลอนให้เต็มแล้วเททิ้ง เติมถังห้าแกลลอนอีกรอบแล้วเททิ้ง เล้วเทสามแกลลอนที่เหลือลงถังห้าแกลลอนอีกที เติมถังเก้าแกลลอนครั้งสุดท้าย เทน้ำสองลิตรลงถังเก้าแกลลอนอีกที แล้วเอาน้ำที่เหลือในถังเก้าแกลลอนไปชั่ง (เวลาคับขันแบบนี้ ไม่ต้องเสียเวลาทิ้งน้ำในถังห้าแกลลอนครั้งสุดท้ายก็ได้ครับ)

สังเกตว่าถังที่ต้องทิ้งน้ำ จะเป็นถังที่มีตัวลบปรากฎอยู่ ส่วนค่าในวงเล็บที่เป็นบวกและลบแสดงจำนวนครั้งการตักน้ำและเทน้ำจากถังที่เลขตัวนั้นคูณอยู่ครับ
__________________
คนไทยร่วมใจอย่าใช้ภาษาวิบัติ
ฝึกพิมพ์สัญลักษณ์สักนิด ชีวิต(คนตอบและคนถาม)จะง่ายขึ้นเยอะ (จริงๆนะ)

Stay Hungry. Stay Foolish.

29 พฤษภาคม 2005 17:25 : ข้อความนี้ถูกแก้ไขแล้ว 1 ครั้ง, ครั้งล่าสุดโดยคุณ nongtum
ตอบพร้อมอ้างอิงข้อความนี้