กำหนด 3 รายการอินพุตรายการคู่ประสานงานสตริง 2D และสตริงอักขระเดี่ยวเอาท์พุทไม่ว่าอักขระในแต่ละพิกัดของสตริง 2D จะเท่ากับอักขระเดียว คุณสามารถรับอินพุตในลำดับใดก็ได้และพิกัดอาจมีดัชนี 1 ชุด
คุณอาจใช้สตริง 2D เป็นรายการ 2D รายการของบรรทัดหรือสตริง 2D
ตัวอย่าง: (0,0), "#_\n__", "#" -> True
สตริงนั้นคือ
#_
__
ถ่านที่พิกัด(0,0)
(จากซ้ายด้านบน) #
เป็น นี่เท่ากับรายการอินพุตที่สาม#
ดังนั้นคุณจึงเอาท์พุทTrue
(หรือค่าจริงใด ๆ )
ตัวอย่าง: [(0,0), (1,1)], "#_\n_#", "#" -> True
สตริงนั้นคือ
#_
_#
อักขระที่พิกัด(0,0)
และ(1,1)
มีทั้งคู่#
ดังนั้นผลลัพธ์จะเป็นจริง
เอาต์พุตจะเป็นจริงถ้า iff ทุกพิกัดตรงกับแฮช ไม่แฮชทุกคนจะต้องมีพิกัดที่ตรงกัน หากไม่มีการเกิดของถ่านเดี่ยว (#
ในบางกรณีทดสอบ) ในสตริง 2D ผลลัพธ์จะยังคงเป็นเท็จ
คุณสามารถสันนิษฐานได้ว่าพิกัดจะอยู่ภายในขอบเขตของสตริง 2D เสมอ
กรณีทดสอบเพิ่มเติม: (ฉันใส่ถ่านตัวที่สองเพื่อความสะดวกในการอ่าน)
[(0,0), (2,1), (3,0)], #
#_##
#_##
True
[(0,0), (1,1), (3,0)], #
#_##
#_##
False (1,1 is not a hash)
[(1,1)], a
#a##
#a##
True
[(4, 0), (3, 0), (2, 0), (1, 0), (0, 0), (0, 1), (0, 2), (0, 3), (1, 3), (2, 3), (2, 2), (3, 2), (4, 2), (4, 3)], ' '
####
#
#
True
หมายเหตุกรณีทดสอบล่าสุดใช้ช่องว่างเป็นสตริงอักขระเดี่ยวและแฮชรอบ ๆ ช่องว่าง
ที่เกี่ยวข้อง (สิ่งที่ตรงกันข้ามกับความท้าทายนี้)
(row, column)
(column, row)