ใช้พื้นที่ 2 มิติแบ่งออกเป็นองค์ประกอบตารางหน่วยของแกนที่มีการจัดกึ่งกลางตามระยะเวลาจำนวนเต็ม มีการกล่าวถึงขอบภายในถ้ามันแบ่งเป็นสององค์ประกอบมิฉะนั้นจะเป็นขอบภายนอก
เป้าหมายของคุณคือการหาจำนวนขั้นต่ำขององค์ประกอบที่อยู่ใกล้เคียงซึ่งจะต้องสำรวจให้ถึงขอบด้านนอกโดยเริ่มจากศูนย์กลางของแต่ละองค์ประกอบหรือที่เรียกว่า traversal distance
หรือdistance
สั้น คุณสามารถเคลื่อนที่ผ่านขอบเท่านั้น (เช่นไม่มีการตัดมุม / การเคลื่อนที่ในแนวทแยง) โปรดทราบว่า "องค์ประกอบภายนอก" (องค์ประกอบที่มีขอบภายนอกอย่างน้อยหนึ่ง) ได้รับการพิจารณาว่าจำเป็นต้องสำรวจ0
องค์ประกอบที่อยู่ใกล้เคียงเพื่อเข้าถึงขอบด้านนอก ..
อินพุต
อินพุตเป็นรายการของคู่พิกัดจำนวนเต็มที่ไม่เป็นลบซึ่งแสดงถึง (x, y) ของศูนย์กลางขององค์ประกอบทั้งหมด มันจะสันนิษฐานว่าไม่มีองค์ประกอบที่ทับซ้อนกัน (เช่นคู่ x / y ระบุองค์ประกอบ) คุณอาจไม่คิดอะไรเกี่ยวกับลำดับการป้อนองค์ประกอบ
คุณสามารถแปลงต้นกำเนิดของอินพุตให้เป็นตำแหน่งใดก็ได้ (เช่น 0,0 หรือ 1,1 เป็นต้น)
คุณอาจสมมติว่าองค์ประกอบอินพุตทั้งหมดเชื่อมต่อกันหรืออาจกล่าวได้ว่าเป็นไปได้ที่จะเดินทางจากองค์ประกอบหนึ่งไปยังองค์ประกอบอื่น ๆ โดยใช้กฎด้านบน โปรดทราบว่านี่ไม่ได้หมายความว่าการเชื่อมต่อภูมิภาค 2 มิตินั้นง่าย มันอาจมีรูอยู่ข้างใน
ตัวอย่าง: ต่อไปนี้เป็นอินพุตที่ไม่ถูกต้อง
0,0
2,0
ไม่จำเป็นต้องตรวจสอบข้อผิดพลาด
อินพุตอาจมาจากแหล่งใดก็ได้ (ไฟล์ stdio พารามิเตอร์ฟังก์ชัน ฯลฯ )
เอาท์พุต
ผลลัพธ์ควรเป็นรายการของพิกัดที่ระบุแต่ละองค์ประกอบและระยะห่างของจำนวนเต็มที่สอดคล้องกันเพื่อไปที่ขอบ ผลลัพธ์อาจอยู่ในลำดับองค์ประกอบใด ๆ ที่ต้องการ (เช่นคุณไม่ต้องการองค์ประกอบเอาต์พุตในลำดับเดียวกันกับที่ได้รับเป็นอินพุต)
ผลลัพธ์อาจเป็นไปได้กับแหล่งใด ๆ (ไฟล์, stdio, ค่าส่งคืนฟังก์ชั่น, ฯลฯ )
เอาท์พุทใด ๆ ที่ตรงกับพิกัดขององค์ประกอบด้วยระยะทางด้านนอกก็ถือว่าใช้ได้
x,y: distance
...
[((x,y), distance), ...]
[(x,y,distance), ...]
ตัวอย่าง
ข้อความตัวอย่างอินพุตอยู่ในรูปแบบx,y
หนึ่งองค์ประกอบต่อบรรทัด คุณสามารถปรับแต่งสิ่งนี้เป็นรูปแบบการป้อนข้อมูลที่สะดวก (ดูกฎการจัดรูปแบบอินพุต)
เอาต์พุตข้อความตัวอย่างอยู่ในรูปแบบx,y: distance
โดยมีหนึ่งองค์ประกอบต่อบรรทัด อีกครั้งคุณสามารถปรับแต่งสิ่งนี้เป็นรูปแบบ ouput ที่สะดวกสบาย (ดูกฎของรูปแบบผลลัพธ์)
ตัวเลขกราฟิกมีขอบเขตซ้ายล่างเป็น (0,0) และตัวเลขภายในเป็นตัวแทนของระยะทางต่ำสุดที่คาดว่าจะเดินทางไปถึงขอบด้านนอก โปรดทราบว่าตัวเลขเหล่านี้ใช้เพื่อจุดประสงค์ในการสาธิตเท่านั้น โปรแกรมของคุณไม่จำเป็นต้องแสดงผลลัพธ์เหล่านี้
ตัวอย่างที่ 1
การป้อนข้อมูล:
1,0
3,0
0,1
1,2
1,1
2,1
4,3
3,1
2,2
2,3
3,2
3,3
เอาท์พุท:
1,0: 0
3,0: 0
0,1: 0
1,2: 0
1,1: 1
2,1: 0
4,3: 0
3,1: 0
2,2: 1
2,3: 0
3,2: 0
3,3: 0
การแสดงกราฟิก:
ตัวอย่างที่ 2
การป้อนข้อมูล:
4,0
1,1
3,1
4,1
5,1
6,1
0,2
1,2
2,2
3,2
4,2
5,2
6,2
7,2
1,3
2,3
3,3
4,3
5,3
6,3
7,3
8,3
2,4
3,4
4,4
5,4
6,4
3,5
4,5
5,5
เอาท์พุท:
4,0: 0
1,1: 0
3,1: 0
4,1: 1
5,1: 0
6,1: 0
0,2: 0
1,2: 1
2,2: 0
3,2: 1
4,2: 2
5,2: 1
6,2: 1
7,2: 0
1,3: 0
2,3: 1
3,3: 2
4,3: 2
5,3: 2
6,3: 1
7,3: 0
8,3: 0
2,4: 0
3,4: 1
4,4: 1
5,4: 1
6,4: 0
3,5: 0
4,5: 0
5,5: 0
การแสดงกราฟิก:
ตัวอย่างที่ 3
การป้อนข้อมูล:
4,0
4,1
1,2
3,2
4,2
5,2
6,2
8,2
0,3
1,3
2,3
3,3
4,3
5,3
6,3
7,3
8,3
9,3
1,4
2,4
3,4
4,4
5,4
6,4
7,4
8,4
9,4
2,5
3,5
4,5
5,5
6,5
9,5
10,5
11,5
3,6
4,6
5,6
9,6
10,6
11,6
6,7
7,7
8,7
9,7
10,7
11,7
เอาท์พุท:
4,0: 0
4,1: 0
1,2: 0
3,2: 0
4,2: 1
5,2: 0
6,2: 0
8,2: 0
0,3: 0
1,3: 1
2,3: 0
3,3: 1
4,3: 2
5,3: 1
6,3: 1
7,3: 0
8,3: 1
9,3: 0
1,4: 0
2,4: 1
3,4: 2
4,4: 2
5,4: 2
6,4: 1
7,4: 0
8,4: 0
9,4: 0
2,5: 0
3,5: 1
4,5: 1
5,5: 1
6,5: 0
9,5: 0
10,5: 0
11,5: 0
3,6: 0
4,6: 0
5,6: 0
9,6: 0
10,6: 1
11,6: 0
6,7: 0
7,7: 0
8,7: 0
9,7: 0
10,7: 0
11,7: 0
การแสดงกราฟิก:
เกณฑ์การให้คะแนน
นี่คือรหัสกอล์ฟ รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ ช่องโหว่มาตรฐานใช้ บิวด์อินใด ๆ นอกเหนือจากที่ออกแบบมาเพื่อแก้ไขปัญหานี้ได้รับอนุญาต