Minesweeperเป็นเกมตัวต่อยอดนิยมที่คุณต้องค้นหาว่าแผ่นไหนเป็น "เหมือง" โดยไม่ต้องคลิกบนแผ่นเหล่านั้น แต่ละแผ่นเป็นทั้งเหมือง (แสดงโดย*
) หรือเบาะแสเช่นหมายเลขตั้งแต่ 0 ถึง 8 แสดงถึงจำนวนของกระเบื้อง 8 แผ่นที่อยู่ใกล้เคียงคือเหมือง งานของคุณในวันนี้คือนำกระดานที่มีเหมืองและกรอกข้อมูลทั้งหมด ตัวอย่างเช่นดูกระดานต่อไปนี้ 5x4 โดยมี 5 เหมือง:
*
* *
*
*
หลังจากเติมเบาะแสบอร์ดจะมีลักษณะเช่นนี้:
2*211
*33*1
12*32
0112*
รายละเอียด
คุณต้องเขียนโปรแกรมเต็มหรือฟังก์ชั่นที่ใช้ในตารางของตัวละครที่มีเพียงช่องว่างและเครื่องหมายดอกจันและส่งออกตารางอื่นที่แต่ละช่องว่างจะถูกแทนที่ด้วยจำนวนของเหมืองที่อยู่ติดกัน (เครื่องหมายดอกจัน) สิ่งเหล่านี้เป็นรูปแบบที่ยอมรับได้สำหรับกริดของคุณ:
สตริงที่มีการขึ้นบรรทัดใหม่
รายการ 2D ของตัวละคร / สายอักขระเดียว
รายการของสตริง
คุณสามารถสมมติว่ากริดจะต้องมีอย่างน้อย 1x1 ถึงแม้ว่ามันจะเป็นไปได้ที่จะเป็นเหมืองทั้งหมดหรือช่องว่างทั้งหมด
กริดอินพุตจะถูกเสริมด้วยจำนวนช่องว่างที่เหมาะสมเสมอ ตามปกตินี่คือcode-golfดังนั้นช่องโหว่มาตรฐานจึงนำมาใช้และคำตอบที่สั้นที่สุดในการชนะไบต์!
ตัวอย่าง IO
เพื่อให้คุณเห็นช่องว่างฉันจะแสดงตัวอย่าง IO ทั้งหมดด้วยวงเล็บรอบ ๆ
Input:
[ * ]
[* ]
[ ]
[ ]
[ ** ]
[ * * ]
Output:
[1101*1]
[*10111]
[110000]
[012210]
[12**21]
[1*33*1]
Input:
[****]
[****]
Output:
[****]
[****]
Input:
[ ]
[ ]
[ ]
[ ]
Output:
[000]
[000]
[000]
[000]
Input:
[* ]
[** ]
[ ]
[ *]
Ouput:
[*310]
[**10]
[2221]
[001*]
Input:
[** ]
[* *]
[ * ]
[ ]
[* ]
[**** ]
Output:
[**1011]
[*4211*]
[12*111]
[121100]
[*43210]
[****10]
Input:
[ * ]
[ * ]
[ * ]
[** *** ]
[ *** ]
[ ]
[ ** ]
[ * * ]
[* ** ]
[ ** ]
Output:
[00001*1111]
[00002221*1]
[22102*4321]
[**102***31]
[221013***1]
[0000013542]
[0112111**1]
[12*2*12442]
[*212112**2]
[1100002**2]