เขียนโปรแกรมในการเล่นเกมที่เชื่อมต่อ 4 คุณได้รับสถานะของบอร์ดเป็นอินพุทและคุณต้องตัดสินใจว่าคอลัมน์ใดที่จะวางชิ้นของคุณเพื่อให้ได้ 4 ในแถว (แนวนอนแนวตั้งหรือแนวทแยงมุม) หรือปิดกั้นคู่ต่อสู้ไม่ให้ทำเช่นเดียวกัน
กระดานเป็นอาร์เรย์ 6x7 ซึ่งแต่ละเซลล์อาจว่างเปล่า ('') มีชิ้นส่วนของคุณ ('X') หรือชิ้นส่วนของคู่ต่อสู้ ('O') บอร์ดตัวอย่าง:
O
XX X
XOX OO
XOO OXO
OXXOXXO
XOXOXOX
คุณต้องการเล่นในคอลัมน์ 3 (คอลัมน์คือ 0-6, หมายเลขจากซ้าย) สำหรับการชนะในแนวทแยง ดังนั้นคุณส่งออก:
3
รหัสของคุณจะต้องส่งออกหมายเลขคอลัมน์และจะต้องเป็นไปตามเกณฑ์ต่อไปนี้:
- คุณไม่สามารถเล่นในคอลัมน์ที่มี 6 ชิ้นอยู่ในนั้น
- หากมีการชนะอย่างน้อยหนึ่งครั้งคุณต้องเล่นอย่างใดอย่างหนึ่ง
- หากคุณสามารถป้องกันคู่ต่อสู้ไม่ให้ชนะในการย้ายครั้งต่อไปคุณต้องทำเช่นนั้น
โปรดทราบว่าการเล่นที่ดีที่สุดนั้นไม่จำเป็นเพียงแค่คุณชนะทันทีหรือป้องกันการชนะทันทีของคู่ต่อสู้ หากฝ่ายตรงข้ามของคุณมีมากกว่าหนึ่งวิธีที่จะชนะคุณไม่จำเป็นต้องปิดกั้นใด ๆ
คุณจะได้รับบอร์ดสำหรับอินพุตมาตรฐานและต้องพิมพ์หมายเลขคอลัมน์ที่คุณต้องการเล่นบนเอาต์พุตมาตรฐาน กระดานรับประกันว่าจะมีรูปแบบที่ดี (ไม่มีรูอย่างน้อยหนึ่งท่าที่เป็นไปได้) และยังไม่มีการชนะสำหรับผู้เล่นทั้งสอง
รหัสที่สั้นที่สุดชนะ
ตัวอย่างที่ 1
X
O
X
O
OOO X
XXX O
คุณต้องเล่นทั้งคอลัมน์ 0 หรือ 4 เพื่อชนะ
ตัวอย่างที่ 2
X
X X
O O
XOX XO
XXO XOX
XXO XXO
คุณต้องเล่นคอลัมน์ 3 เพื่อป้องกันการชนะทันทีของคู่ต่อสู้
ตัวอย่างที่ 3
X
XO
OX O
XO XX
XXO OOO
OOO XXO
คุณไม่สามารถชนะหรือหยุดฝ่ายตรงข้ามไม่ให้ชนะดังนั้นคุณสามารถเล่นคอลัมน์ใดก็ได้ 1-6 (0 เต็ม)
ตัวอย่างที่ 4
X
O
X
OOO
XOX
OXOX
คุณไม่สามารถเล่นในคอลัมน์ 3 ได้เพราะจะทำให้คู่ต่อสู้ของคุณชนะทันที คุณอาจเล่นในคอลัมน์ 1-2 หรือ 4-6