ในรถบัสมีผู้หญิงอยู่ 7 คน
ผู้หญิงแต่ละคนถือกระเป๋า 7 ใบ
ในกระเป๋าแต่ละใบมีแมวอยู่ 7 ตัว
แมวแต่ละตัวมีลูก 7 ตัว
แมวแต่ละตัวมีขา 4 ขา
มีทั้งหมดกี่ขาบนรถ?
นับขาผู้ ญ ด้วยนะครับ
กระทู้เก่าๆ จะย้ายตามไปในภายหลัง ตอนนี้ปิดการโพสต์กระทู้ไว้ เหลือไว้เฉพาะอ้างอิงเท่านั้น
เอ๊ะ แปลก ๆ นะครับ
กระเป๋าแต่ละใบมีแมว 7ตัว
แล้ว แมวแต่ละตัวมีลูก 7 ตัว
มันแย้งกันอ่ะ
ลูกแมวนี่ อยู่ในท้องแม่แมวป่าวครับ?
ถ้าลูกแมวอยู่ในท้องแม่แมว จะนับเป็นตัวไหมครับ
เช่น แม่แมวมีลูกในท้อง 7 ตัว แปลว่ามีแมวทั้งหมด 8 ตัว(รวมแม่มันด้วย)
ถ้าใช้ แบบนี้ก็เป็นไปไม่ได้ซิครับ
เพราะมันจะแย้งกับที่บอกว่า ในกระเป๋าแต่ละใบ มีแมว 7 ตัว
ในกรณีถ้า ลูกแมว ออกมาเป็นตัวแล้ว
มันก็เป็นไปไม่ได้เหมือนกัน เพราะ มีลูกแมว 7 ตัว แต่มีแมวในกระเป๋าได้ 7ตัว
แล้วแม่แมวไปไหนอ่ะ?
ในกรณีที่ลูกแมวอยู่ในท้องแม่แมว แล้วนับแค่เป็น แม่แมว 1 ตัวเท่านั้น
อย่างนี้ค่อยคิดได้
แมว1 ตัวมี 4 ขา
ลูกแมว 1 ตัวก็มี 4ขา
แม่แมวที่อุ้มท้อง รวมมีทั้งหมด 4 + (7x4)= 32 ขา
ในกระเป๋ามี(แม่)แมว 7 ตัว รวมในกระเป๋ามี 7x32 = 224 ขา
กระเป๋ามี 7 ใบ รวม 7 กระเป๋า มีขา 7x224 = 1568 ขา
ผู้หญิง 7 คน 14 ขา รวมขาทั้งหมด = 1568+14 = 1582 ขา
แต่ผมว่ามันยังตอบได้ไม่หมดเพราะ
-ในรถมีผุ้หญิง 7 คน ไม่ได้แปลว่าไม่มีคนอื่น (ผู้ชาย กระเทย เก ทอม ดี้) อยู่
-ผู้หญิง 7 คน ถ้าเป็นคนแก่ถือไม่ได้ จะนับเป็น 3ขา (or more) หรือไม่
-มีอะไรอย่างอื่นอีกป่าว (หมา แมงมุม...)
-บนหลังคาก็นับว่า เป็นบนรถ แล้วบนหลังคามีอะไรอีกไหม
-ถ้าจะตอบแบบกวน ๆ ก็รวม รถ ขาไป ขากลับ ได้อีก 2 ขา
โฮกกก เอาปัญหาเชาว์มาให้คิดหรอ
แก้หน่อย หลังจากเฟอะฟะอ่านโจทย์ผิด
แมว1 ตัวมี 4 ขา
ลูกแมว 1 ตัวก็มี 4ขา
แม่แมวที่อุ้มท้อง รวมมีทั้งหมด 4 + (7x4)= 32 ขา
ในกระเป๋ามี(แม่)แมว 7 ตัว รวมในกระเป๋ามี 7x32 = 224 ขา
กระเป๋ามี 7 ใบ มีขา 7x224 = 1568 ขา
กระเป๋าทั้งหมด 7x7 ใบ มี 1568x7 ขา = 10976
ผู้หญิง 7 คน 14 ขา รวมขาทั้งหมด = 10976+14 = 10990 ขา
มีขา 7 คู่ อยู่บนรถ ถูกมั้ยเอ่ย
ถ้านับแบบตรงตัวตามคำถามก็
อาจจะรวมคนขับอีก 2 ขาด้วยก็ตามแต่
โอ้ๆๆ ปรบมือดังๆๆให้คุณ sid ด้วยครับ เป็นคำตอบที่ถูกต้องนะครับคือ 10990
ไม่ทราบว่าคิดนานไหมครับ ผมคิดผิดไปสามสี่รอบ เพราะว่าลืมนับแม่แมวครับ
แล้วอันนนี้ไม่ใช่ปัญหาเชาว์ครับ ตรงๆๆเลย
คำถามแบบนี้ ช่วยพัฒนาสมองได้ดีมากเลยนะครับผมว่า สนุกแล้วก้อไม่ยากจนเกินไปด้วย
เคยไปถามเพื่อนทีนึง มันตอบว่ามี 2 ขาครับ คือ ขาไป-ขากลับ (มันช่างคิดเนอะ ^_^" แต่ผิด 55+)
อ้าวเฮ้ย
เพิ่งอ่านโจทย์ดี ๆ
โชว์นูบเลยผม
ผู้หญิงแต่ละคนถือกระเป๋า 7 ใบ
เมื่อคืนง่วง ๆ อ่านแล้วจับใจความได้เป็น มีกระเป๋า 7 ใบ
ผมว่าไม่ถูกนะครับ เพราะว่า ลูกแมว หรือ แม่แมว มันก็คือ "แมว" เหมือนกัน เพราะฉะนั้น ประโยค "ในกระเป๋าแต่ละใบมีแมวอยู่ 7 ตัว" ก็ต้องหมายถึงมีแมว7 ตัวจริงๆ ถ้าคำตอบเป็น 10990 จริง แสดงว่าโจทย์ผิดครับ
คิดเหมือนผมเลย
ผมก็เข้าใจแบบ MR.Joh อะ แสดง เราวิเคราะห์ไปในแนวทางเดวกันอะ เอ๋ งงแล้วอะ
ลองเชียนด้วย haskell ดู
เริ่มด้วย datatype ก่อน
-- ใช้ custom datatype เพื่อแยกว่ามี รถ, ผู้หญิง, ... data ObjectType = Bus | Woman | Bag | Cat | Kitten deriving Show -- slot ก็คือ สิ่งที่บรรจุไว้ เช่น รถ บรรจุ ผู้หญิง, -- ผู้หญิง บรรจุ กระเป๋า data Object = Obj ObjectType Slot deriving Show -- สิ่งที่บรรจุได้ แบ่งเป็นสองพวก คือ มีปริมาณนับได้ กับ ไม่ได้บรรจุอะไรไว้เลย data Slot = Have Int Object | None deriving Showจากนั้นก็ประกาศโจทย์
prob = Obj Bus (Have 7 (Obj Woman (Have 7 (Obj Bag (Have 7 (Obj Cat (Have 7 (Obj Kitten None))))))))หาทางแยกจำนวนของแต่ละ objecttype ออกมา
enumerate :: Object -> [(ObjectType, Int)] enumerate obj = extract 1 obj extract :: Int -> Object -> [(ObjectType, Int)] extract multiplier (Obj o None) = [(o, multiplier)] extract multiplier (Obj o (Have n rest)) = (o, multiplier) : extract nn rest where nn = multiplier * nทดสอบ run
จากนั้นก็สร้าง function นับจำนวน ขา
สุดท้ายก็ run หาคำตอบ
โอว
---
http://blog.vee-u.com/
ภาษาอังกฤษไม่แข็งแรง
มานึกได้ว่ามันต้องใช้ has สิ ไม่ใช่ have
โอว !!! ด้วยคนครับ
โอ้ว
อึ้ง...
โอว้ my god K.pphetra เทพๆ
อึ้งเหมือนกันครับ เีขียนโปรแกรมหาคำตอบกันเลย ขอคาราวะ 1 จอก
โอ้โห คาราวะอีกคน
หะหะ พึ่งเข้ามาอ่านครับ
เขียน haskell ได้อ่านเข้าใจง่ายดีจังเลยครับ