PDA

View Full Version : Bài toán người nông dân sang sông?



hongoctrien
13-01-2013, 14:29
Bài toán:
Một người nông dân có với một con trâu, một con hổ và một bó cỏ bên bờ sông. Ông ta muốn tất cả cùng sang bờ bên kia. Người nông dân chỉ có một chiếc thuyền và thuyền ngoài người nông dân chỉ chở được thêm 1 trong 3 vật trên. Không được để chỉ có con trâu và con hổ cùng ở một bên bờ sông vì hổ có thể ăn thịt trâu, tương tự đối với con trâu và bó cỏ. Làm thế nào để tất cả cùng qua sông?

Mọi người giúp mình code c++ và prolog của bài này với ạ
Xin cảm ơn nhiều

quangvu
15-01-2013, 13:50
Giải thuật khá đơn giản :
1. Chở con trâu sang sông
2. Quai về chở con hổ sang sông, khi để con hổ xuống bờ sông bên kia thì mang con trâu về.
3. Khi về bên này sông, thả trâu xuống và chở bó cỏ sang sông
4. Quai về lần nửa, chở nốt cn trâu sang sông

Complete !

superthin
15-01-2013, 14:15
Người làm dễ còn giải thuật cho máy tính thì không rõ thế nào bài toán này nhỉ? Đặt một phương trình để giải rồi tìm nghiệm chăng? Có ai từng làm những bài toán dạng này bằng máy tính chia sẻ chút kinh nghiệm xem. Nó có giống những bài toán dạng đánh cờ/ chơi bài hông nhỉ?

hongoctrien
23-01-2013, 08:41
Người làm dễ còn giải thuật cho máy tính thì không rõ thế nào bài toán này nhỉ? Đặt một phương trình để giải rồi tìm nghiệm chăng? Có ai từng làm những bài toán dạng này bằng máy tính chia sẻ chút kinh nghiệm xem. Nó có giống những bài toán dạng đánh cờ/ chơi bài hông nhỉ?

Đúng rồi đó bạn, phát biểu bằng lời thì dễ, viết chương trình mới là vấn đề :D