จุดประสงค์ของการท้าทายนี้คือการพิจารณาว่าสามารถรวบรวมกระเบื้องชิ้นเดียวหนึ่งมิติเพื่อสร้างชิ้นต่อเนื่องที่ จำกัด ได้หรือไม่
ชิ้นเป็นไม่ว่างเปล่าลำดับ จำกัด ของศูนย์และคนที่จะเริ่มต้นและจบลงด้วยการอย่างใดอย่างหนึ่ง บางชิ้นที่เป็นไปได้1
, 101
, ,1111
1100101
การปูกระเบื้องหมายถึงการจัดเรียงชิ้นส่วนเพื่อให้เกิดบล็อกที่ต่อเนื่องกันหนึ่งอัน ชิ้นหนึ่งจากหนึ่งสามารถครอบครองสถานที่ของศูนย์ แต่ไม่ของหนึ่งจากชิ้นอื่น
ถ้าเรามองว่าวัตถุหนึ่งเป็น "วัสดุแข็ง" และศูนย์เป็น "หลุม" ชิ้นควรจะพอดีเพื่อที่จะยืดเดียวโดยไม่ต้องออกจากหลุมใด ๆ
ในการสร้างแบบเรียงต่อกันชิ้นส่วนสามารถเลื่อนตามพื้นที่หนึ่งมิติของพวกเขาเท่านั้น (ไม่สามารถแยกหรือสะท้อนได้) แต่ละชิ้นจะใช้งานเพียงครั้งเดียว
ตัวอย่าง
ทั้งสามชิ้น101
, 11
, 101
สามารถกระเบื้องดังแสดงในต่อไปนี้ซึ่งแต่ละชิ้นเป็นตัวแทนที่มีการเปลี่ยนแปลงที่จำเป็น:
101
11
101
ดังนั้นการปูกระเบื้องที่ได้รับคือ
111111
เป็นตัวอย่างที่สองชิ้น11011
และ1001101
ไม่สามารถปูกระเบื้อง โดยเฉพาะอย่างยิ่งการเปลี่ยนแปลง
11011
1001101
ไม่ถูกต้องเพราะมีสองคนที่ปะทะกัน; และ
11011
1001101
ไม่ถูกต้องเนื่องจากผลลัพธ์จะมีศูนย์
กฎเพิ่มเติม
การป้อนข้อมูลเป็นชุดของหนึ่งหรือมากกว่าหนึ่งชิ้น อนุญาตรูปแบบที่เหมาะสม ตัวอย่างเช่น:
- รายการสตริงที่แต่ละสตริงสามารถมีอักขระที่สอดคล้องกันสองตัวที่ต่างกัน;
- หลายอาร์เรย์ที่แต่ละอาร์เรย์มีตำแหน่งของชิ้นส่วน
- รายการของจำนวนเต็ม (คี่) เช่นการเป็นตัวแทนไบนารีของแต่ละหมายเลขกำหนดชิ้นส่วน
ส่งออกควรจะเป็นค่า truthy ถ้าปูกระเบื้องเป็นไปได้และค่า falsy มิฉะนั้น ค่าเอาต์พุตไม่จำเป็นต้องสอดคล้องกัน นั่นคือพวกเขาสามารถแตกต่างกันสำหรับปัจจัยการผลิตที่แตกต่างกัน
โปรแกรมหรือฟังก์ชั่นที่ได้รับอนุญาตในการเขียนโปรแกรมภาษา ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ
กรณีทดสอบ
แต่ละอินพุตอยู่ในบรรทัดที่แตกต่างกัน
Truthy
1
111
1, 1
11, 111, 1111
101, 11, 1
101, 11, 101
10001, 11001, 10001
100001, 1001, 1011
10010001, 1001, 1001, 101
10110101, 11001, 100001, 1
110111, 100001, 11, 101
1001101, 110111, 1, 11, 1
Falsy
101
101, 11
1, 1001
1011, 1011
11011, 1001101
1001, 11011, 1000001
1001, 11011, 1000001, 10101
101101
นั้นจะเป็นความจริงแม้ว่าจะไม่มีจำนวนที่แน่นอนของพวกเขาในบล็อกที่ต่อเนื่องกัน