Mathcenter Forum  

Go Back   Mathcenter Forum > คลายเครียด > Games and Puzzles
สมัครสมาชิก คู่มือการใช้ รายชื่อสมาชิก ปฏิทิน ข้อความวันนี้

ตั้งหัวข้อใหม่ Reply
 
เครื่องมือของหัวข้อ ค้นหาในหัวข้อนี้
  #1  
Old 06 กันยายน 2011, 02:32
Onasdi's Avatar
Onasdi Onasdi ไม่อยู่ในระบบ
กระบี่ประสานใจ
 
วันที่สมัครสมาชิก: 12 พฤษภาคม 2005
ข้อความ: 760
Onasdi is on a distinguished road
Thumbs up ปัญหาลับสมองครับ

มีห้องอยู่ n ห้อง เรียงกันเป็นวงกลม
นั่นก็คือห้องที่ 1 มีประตูเชื่อมไปห้องที่ 2
ห้องที่ 2 มีประตูเชื่อมไปห้องที่ 3
...
ห้องที่ n-1 มีประตูเชื่อมไปห้องที่ n
ห้องที่ n มีประตูเชื่อมไปห้องที่ 1
โดยที่แต่ละห้องมีไฟอยู่ 1 ดวงและสวิตซ์ไฟสำหรับไฟดวงนั้น
ถ้าเราอยู่ในห้องห้องหนึ่งในนี้ และอยากจะรู้ว่ามีห้องอยู่ทั้งหมดกี่ห้อง (n เป็นเท่าไหร่) จะต้องทำอย่างไร

หมายเหตุ:
1. ตอนเริ่ม ไฟในแต่ละห้องอาจจะเปิดหรือปิดอยู่ก็ได้
2. อนุญาตให้เปิดปิดไฟเท่านั้น ห้ามทำเครื่องหมายใดๆกับห้องได้ เช่น เขียนเลข 1,2,3,...
3. ไม่สามารถจับหลอดไฟได้ว่าร้อนหรือไม่ร้อน
ตอบพร้อมอ้างอิงข้อความนี้
  #2  
Old 06 กันยายน 2011, 03:17
ความฝัน ความฝัน ไม่อยู่ในระบบ
จอมยุทธ์หน้าหยก
 
วันที่สมัครสมาชิก: 16 เมษายน 2010
ข้อความ: 184
ความฝัน is on a distinguished road
Default

ลองตอบดูนะครับ

สมมติเรายืนอยู่ที่ห้อง 1 เราเปิดไฟไว้ สมมติขวามือคือห้องสอง ซ้ายคือห้อง n

เราเดินไปทางขวาเจอห้องไหนห้องแรกที่ไฟเปิด จำไว้ว่าห้องที่เท่าไหร่ แล้วปิดไฟ วิ่งกลับมาที่ห้องหนึ่ง

ถ้าห้องหนึ่งไฟดับจบ แต่ถ้ายังไม่ดับก็ไปต่อ

ปิดไปเรื่อยๆจนการปิดไฟห้องที่kทำให้ห้องหนึ่งดับ

แสดงว่า n = k-1
__________________
ทำตัวให้ตื่นเต้น
ตอบพร้อมอ้างอิงข้อความนี้
  #3  
Old 06 กันยายน 2011, 03:24
PaoBunJin PaoBunJin ไม่อยู่ในระบบ
จอมยุทธ์หน้าใหม่
 
วันที่สมัครสมาชิก: 14 มีนาคม 2004
ข้อความ: 69
PaoBunJin is on a distinguished road
Send a message via MSN to PaoBunJin
Default

มาตอบคำถามยามดึกครับ(นอนไม่หลับ)

วิธีคือ
ขั้นเริ่มต้น ปิดไฟห้องที่ยืนอยู่ เดินไปห้องถัดไปทางใดก็ได้(ในที่นี้ขอเรียกว่าตามเข็ม) เปิดไฟห้องถัดไปสามห้อง ต่อจากนั้นห้องถัดไปปิดไฟ (คือจะมีห้องเปิดไฟอยู่สามห้องระหว่างห้องปิดไฟ)

ขั้นตรวจสอบ เดินตามเข็มต่อไป ดูทีละห้าห้อง ว่าเป็นเหมือนขั้นเริ่มต้นหรือไม่(ปิดหนึ่ง เปิดสาม ปิดหนึ่ง)

ถ้าไม่ใช่ ให้ปิดไฟให้หมดทั้งห้าห้อง แล้วทำซ้ำ(คือตรวจห้าห้องถัดไป)

ถ้าใช่(คือ ปิดหนึ่ง เปิดสาม ปิดหนึ่ง) ให้ปิดไฟดวงกลาง แล้วเดินกลับ(เดินทวนเข็ม) ไปตรวจสอบว่า ไฟสามดวงในขั้นเริ่มต้นดวงกลางดับหรือไม่

ถ้าดับ เราจะนับได้เลยว่ามีกี่ห้อง

ถ้าไม่ดับ ให้เดินตามเข็ม ไปถึงห้องที่เปิดไฟ แล้วเริ่มขั้นตรวจสอบอีกครั้ง

(ในที่นี้สมมติว่าห้องมีไม่น้อยกว่าห้าห้องนะครับ ส่วนถ้าน้อยกว่าก็เปลี่ยนขั้นเริ่มต้นเป็นแบบอื่นเท่านั้นเองครับ จริงๆแล้วขั้นเริ่มต้นใช้เป็น ปิด เปิด ปิด แบบนี้ก็ได้ ครับ)
ใครมีวิธีอื่นๆลองมาตอบดูนะครับ

ปล.พิมพ์ง่วงๆนะครับ ไม่เข้าใจตรงไหนถามได้เลย
ตอบพร้อมอ้างอิงข้อความนี้
  #4  
Old 06 กันยายน 2011, 03:29
PaoBunJin PaoBunJin ไม่อยู่ในระบบ
จอมยุทธ์หน้าใหม่
 
วันที่สมัครสมาชิก: 14 มีนาคม 2004
ข้อความ: 69
PaoBunJin is on a distinguished road
Send a message via MSN to PaoBunJin
Default

อ๊ะ ระหว่างพิมพ์มีคนตอบตัดหน้าด้วยวิธีคล้ายกันไปซะแล้วครับ
วิธีของคุณ ความฝัน เหมือนของผมแหล่ะครับ เพียงแต่ว่า อาจต้องเดินหลายรอบหน่อย เพราะโอกาสที่ไฟจะเปิดอยู่มีมากกว่า รูปแบบขั้นต้นของผมครับ
ตอบพร้อมอ้างอิงข้อความนี้
  #5  
Old 06 กันยายน 2011, 10:40
banker banker ไม่อยู่ในระบบ
เทพเซียน
 
วันที่สมัครสมาชิก: 24 มกราคม 2002
ข้อความ: 9,910
banker is on a distinguished road
Default

อ้างอิง:
ข้อความเดิมเขียนโดยคุณ Onasdi View Post
.
.
.


หมายเหตุ:
1. ตอนเริ่ม ไฟในแต่ละห้องอาจจะเปิดหรือปิดอยู่ก็ได้
2. อนุญาตให้เปิดปิดไฟเท่านั้น ห้ามทำเครื่องหมายใดๆกับห้องได้ เช่น เขียนเลข 1,2,3,...
3. ไม่สามารถจับหลอดไฟได้ว่าร้อนหรือไม่ร้อน

เริ่มต้นที่ห้อง 1 ถอดรองเท้าทิ้งไว้ 1 ข้าง เดินนับไปเรื่อยๆ กลับมาถึงห้องเดิมเมื่อไร ก็รู้แล้วว่ามีกี่ห้อง

ไม่ผิดกติกาข้อ 1, 2, 3

(กวนไปงั้นแหละ)
__________________
มาหาความรู้ไว้ติวหลาน
แต่หลานไม่เอาเลขแล้ว
เข้ามาทำเลขเอามันอย่างเดียว

ความรู้เป็นสิ่งเดียวที่ยิ่งให้ ยิ่งมีมาก


รู้อะไรไม่สู้ รู้จักพอ
(ยกเว้นความรู้ ไม่ต้องพอก็ได้ หาไว้มากๆแหละดี)
(แต่ก็อย่าให้มากจนท่วมหัว เอาตัวไม่รอด)
ตอบพร้อมอ้างอิงข้อความนี้
  #6  
Old 06 กันยายน 2011, 14:51
Onasdi's Avatar
Onasdi Onasdi ไม่อยู่ในระบบ
กระบี่ประสานใจ
 
วันที่สมัครสมาชิก: 12 พฤษภาคม 2005
ข้อความ: 760
Onasdi is on a distinguished road
Default

เยี่ยมทุกคำตอบเลยครับ (โดยเฉพาะของคุณ banker)

ขอเสริมวิธีของคุณ PaoBunJin นิดนึงครับ
ตอนที่เราสำรวจ เราไม่รู้ก่อนว่าห้องมีน้อยกว่า 5 ห้องรึเปล่า เพราะฉะนั้นเราไม่รู้ว่าต้องใช้ขั้นเริ่มต้นแบบไหน จะแก้ปัญหาตรงนี้อย่างไรดีครับ
ตอบพร้อมอ้างอิงข้อความนี้
  #7  
Old 06 กันยายน 2011, 17:06
yellow's Avatar
yellow yellow ไม่อยู่ในระบบ
ลมปราณไร้สภาพ
 
วันที่สมัครสมาชิก: 20 ธันวาคม 2010
ข้อความ: 1,230
yellow is on a distinguished road
Default

เอาแบบถึกๆ

1) เดินไล่เปิดไฟทุกห้อง จนแน่ใจว่าได้เปิดไฟครบทุกห้องแล้ว

2) ปิดไฟห้องที่เป็นจุดเริ่มต้น แล้วเดินไล่นับ
ตอบพร้อมอ้างอิงข้อความนี้
  #8  
Old 06 กันยายน 2011, 17:45
banker banker ไม่อยู่ในระบบ
เทพเซียน
 
วันที่สมัครสมาชิก: 24 มกราคม 2002
ข้อความ: 9,910
banker is on a distinguished road
Default

อ้างอิง:
ข้อความเดิมเขียนโดยคุณ yellow View Post
เอาแบบถึกๆ

1) เดินไล่เปิดไฟทุกห้อง จนแน่ใจว่าได้เปิดไฟครบทุกห้องแล้ว

2) ปิดไฟห้องที่เป็นจุดเริ่มต้น แล้วเดินไล่นับ
ผมลองดูแล้ว
Name:  2946.jpg
Views: 2263
Size:  15.2 KB


ก็เกิดข้อแย้งแบบนี้
Name:  2947.jpg
Views: 1377
Size:  13.2 KB
__________________
มาหาความรู้ไว้ติวหลาน
แต่หลานไม่เอาเลขแล้ว
เข้ามาทำเลขเอามันอย่างเดียว

ความรู้เป็นสิ่งเดียวที่ยิ่งให้ ยิ่งมีมาก


รู้อะไรไม่สู้ รู้จักพอ
(ยกเว้นความรู้ ไม่ต้องพอก็ได้ หาไว้มากๆแหละดี)
(แต่ก็อย่าให้มากจนท่วมหัว เอาตัวไม่รอด)
ตอบพร้อมอ้างอิงข้อความนี้
  #9  
Old 06 กันยายน 2011, 17:55
yellow's Avatar
yellow yellow ไม่อยู่ในระบบ
ลมปราณไร้สภาพ
 
วันที่สมัครสมาชิก: 20 ธันวาคม 2010
ข้อความ: 1,230
yellow is on a distinguished road
Default

อ้างอิง:
ข้อความเดิมเขียนโดยคุณ banker View Post
ผมลองดูแล้ว

ก็เกิดข้อแย้งแบบนี้


ปัญหาไม่ได้ระบุจำนวนห้องมา ถ้ามี n ห้อง ก็สามารถสร้างรูปแบบการเปิดปิดไฟได้ $2^{n-1}$ แบบ

ถ้าจะให้สังเกตแต่ ไฟปิดเปิดอย่างเดียว วิธีไหนก็ไม่แน่นอนทั้งนั้น


ดังนั้นคงต้องพึ่งรองเท้าของป๋า Banker
ตอบพร้อมอ้างอิงข้อความนี้
  #10  
Old 06 กันยายน 2011, 19:07
PaoBunJin PaoBunJin ไม่อยู่ในระบบ
จอมยุทธ์หน้าใหม่
 
วันที่สมัครสมาชิก: 14 มีนาคม 2004
ข้อความ: 69
PaoBunJin is on a distinguished road
Send a message via MSN to PaoBunJin
Default

ตอบคุณ Onasdi นะครับ ก็ใช้วิธีของคุณ ความฝัน เช็คห้าห้องแรกก่อน ถ้ายังไม่วนซ้ำ ค่อยเริ่มขั้นตอนแรกแบบผมก็ได้ครับ

ปล. คุณ Onasdi เอาคำถามมาจากไหนครับไม่เคยเห็นเลย หรือว่าคิดเอง ถ้ามีอีกขออีกนะครับ
ตอบพร้อมอ้างอิงข้อความนี้
  #11  
Old 07 กันยายน 2011, 00:38
Onasdi's Avatar
Onasdi Onasdi ไม่อยู่ในระบบ
กระบี่ประสานใจ
 
วันที่สมัครสมาชิก: 12 พฤษภาคม 2005
ข้อความ: 760
Onasdi is on a distinguished road
Default

อ้างอิง:
ข้อความเดิมเขียนโดยคุณ yellow View Post
ปัญหาไม่ได้ระบุจำนวนห้องมา ถ้ามี n ห้อง ก็สามารถสร้างรูปแบบการเปิดปิดไฟได้ $2^{n-1}$ แบบ

ถ้าจะให้สังเกตแต่ ไฟปิดเปิดอย่างเดียว วิธีไหนก็ไม่แน่นอนทั้งนั้น


ดังนั้นคงต้องพึ่งรองเท้าของป๋า Banker
ทำได้ครับผม ลองใช้สองวิธีข้างบนดูครับ


อ้างอิง:
ข้อความเดิมเขียนโดยคุณ PaoBunJin View Post
ตอบคุณ Onasdi นะครับ ก็ใช้วิธีของคุณ ความฝัน เช็คห้าห้องแรกก่อน ถ้ายังไม่วนซ้ำ ค่อยเริ่มขั้นตอนแรกแบบผมก็ได้ครับ

ปล. คุณ Onasdi เอาคำถามมาจากไหนครับไม่เคยเห็นเลย หรือว่าคิดเอง ถ้ามีอีกขออีกนะครับ
อันนี้เพื่อนถามมาครับ ผมก็ชอบคำถามแนวนี้เหมือนกัน
ตอบพร้อมอ้างอิงข้อความนี้
  #12  
Old 14 มกราคม 2012, 23:08
art_clex's Avatar
art_clex art_clex ไม่อยู่ในระบบ
เริ่มฝึกวรยุทธ์
 
วันที่สมัครสมาชิก: 21 พฤษภาคม 2004
ข้อความ: 19
art_clex is on a distinguished road
Default

เดินไล่เปิดไฟทุกห้อง (จนเหนื่อย ) ระหว่างนั้นก็นับด้วยครับ ว่าผ่านไปกี่ห้องแล้ว จากนั้นก็ปิดไปห้องสุดท้ายที่ผ่าน สมมติว่าได้ห้องที่ 100000 แล้วก็เดินถอยกลับไป ห้องเดิมที่เป็นจุดเริ่มต้น ซึ่งเราเปิดไฟไปหมดแล้ว
ถ้าเดินกลับไป ไม่เกิน 100000 ห้อง แล้วเจอห้องที่ไฟดับ แสดงว่า ห้องนั้นคือห้องที่เราดับไปเป็นห้องสุดท้าย
ถ้าเดินกลับไป แล้วไม่เจอห้องที่ไฟดับเลย แสดงว่า ห้องมีมากกว่า 100000 ก็เดินไปเปิดให้เยอะกว่าเดิม
__________________
คณิตศาสตร์ คือ วิชาที่ตั้งอยู่บนความสมมติ และเจริญงอกงามได้ด้วยเหตุผล
ตอบพร้อมอ้างอิงข้อความนี้
  #13  
Old 14 มกราคม 2012, 23:16
polsk133's Avatar
polsk133 polsk133 ไม่อยู่ในระบบ
กระบี่ไร้สภาพ
 
วันที่สมัครสมาชิก: 14 สิงหาคม 2011
ข้อความ: 1,873
polsk133 is on a distinguished road
Default

ก็ไม่สามารถทราบได้อยู่ดีครับว่าไฟเปิดหมดทุกห้องแล้ว
ตอบพร้อมอ้างอิงข้อความนี้
ตั้งหัวข้อใหม่ Reply



กฎการส่งข้อความ
คุณ ไม่สามารถ ตั้งหัวข้อใหม่ได้
คุณ ไม่สามารถ ตอบหัวข้อได้
คุณ ไม่สามารถ แนบไฟล์และเอกสารได้
คุณ ไม่สามารถ แก้ไขข้อความของคุณเองได้

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
ทางลัดสู่ห้อง


เวลาที่แสดงทั้งหมด เป็นเวลาที่ประเทศไทย (GMT +7) ขณะนี้เป็นเวลา 04:53


Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Modified by Jetsada Karnpracha