ตรวจสอบว่าชุดของกระเบื้องในตารางเป็นรูปร่างที่ล้อมรอบ
รับชุดไพ่ในตารางฉันต้องการตรวจสอบ: หากกระเบื้องทำให้รูปที่ล้อมรอบ หากกระเบื้องทำให้ตัวเลขที่ถูกปิดล้อมเมื่อคุณนับด้านข้างของกระดานเป็นขอบของรูป หากหนึ่งในสองคำสั่งก่อนหน้านี้เป็นจริงกระเบื้องใดเพิ่มเติมที่อยู่ภายในรูปที่ปิดล้อมรูปแบบไทล์เริ่มต้น ผู้เล่นจะเริ่มต้นด้วยการกดลงบนกระเบื้องหนึ่งแล้วลากนิ้วของพวกเขาไปยังกระเบื้องอื่น ๆ เพื่อสร้างห่วงโซ่ของกระเบื้องสีเดียวกัน ฉันจะตรวจสอบตามที่ฉันไปเพื่อดูว่าไทล์ถัดไปนั้นใช้ได้หรือไม่ อดีต หากผู้เล่นจะเริ่มต้นในกระเบื้องสีแดง, ย้ายที่ถูกต้องต่อไปของพวกเขาเพียงอย่างเดียวคือไปยังกระเบื้องสีแดงที่อยู่ติดกัน (เส้นทแยงมุมไม่นับ) เมื่อผู้ใช้ยกนิ้วฉันต้องสามารถตรวจสอบ 3 รายการข้างต้น ดังนั้นความคิดเริ่มต้นของฉันก็คือตั้งแต่ฉันตรวจสอบความถูกต้องของโซ่ทุกครั้งที่ฉันไปเมื่อผู้เล่นยกนิ้วของฉันฉันสามารถตรวจสอบว่ากระเบื้องตัวแรกและตัวสุดท้ายติดกันหรือไม่ (ฉันรู้อยู่แล้วว่าพวกมันมีสีเดียวกัน) หากพวกเขาอยู่ติดกันฉันมีลางสังหรณ์ว่าฉันได้ทำร่างที่ปิดล้อมและฉันจะมาที่นี่เพื่อลองดูว่าฉันพลาดอะไรที่ยิ่งใหญ่หรือไม่ การพิสูจน์ตรรกะ / คณิตศาสตร์บางอย่างที่ว่าลางสังหรณ์ของฉันถูกต้อง (หรือตัวอย่างที่พิสูจน์ว่าไม่ถูกต้อง) แต่นั่นคือเมื่อฉันคิดว่ารายการหมายเลข 2: ฉันยังต้องคำนึงถึงโซ่ที่ใช้ขอบของกระดานเป็นด้านข้างของรูปที่แนบมา ในกรณีนั้นรายการแรกและชิ้นสุดท้ายในห่วงโซ่จะไม่ติดกัน แต่ฉันก็ยังคงมีรูปที่ล้อมรอบ ดังนั้นตอนนี้ฉันกลับไปที่จตุรัสหนึ่งหน่อย ฉันจะทำอย่างไรกับพิกัดกริดของโซ่นี้เพื่อหาว่าพวกมันสร้างรูปที่ล้อมรอบหรือไม่? และเมื่อฉันจะรู้ว่าฉันมีตัวเลขที่ล้อมรอบสิ่งที่เป็นวิธีที่ดีที่สุดที่จะได้รับรายชื่อที่เพิ่มขึ้นของกระเบื้องทั้งหมดที่ตกอยู่ภายในขอบเขตของตนหรือไม่ ด้านบนฉันวาดภาพสิ่งที่ฉันคาดหวังว่าผลลัพธ์ที่เป็นไปได้ 4 ข้อของการทดสอบนี้คือ โซ่ไม่ได้ทำรูปที่ถูกปิดล้อม โซ่ทำรูปที่ปิดล้อม หากคุณนับด้านข้างของกระดานเป็นขอบ (หรือมากกว่าหนึ่งขอบ) ของรูปภาพโซ่จะสร้างรูปที่ล้อมรอบ ห่วงโซ่จะสร้างรูปที่ถูกปิดล้อม แต่มีจุดข้อมูลเพิ่มเติม (ผู้ใช้เลือกอย่างถูกต้องเป็นส่วนหนึ่งของห่วงโซ่) ซึ่งไม่ได้เป็นส่วนหนึ่งของรูปที่สร้างขึ้น กรณีที่ 4 นั้นยากที่สุดเพราะคุณต้องแยกลิงก์โซ่ "พิเศษ" เพื่อค้นหารูปที่แนบมาและชิ้นส่วนที่อยู่ข้างใน (แต่ไม่ต้องอยู่รอบ ๆ พื้นที่ …