Cho tọa độ của một số điểm trên một mặt phẳng và bán kính của một vòng tròn bao quanh mỗi điểm, vẽ các đa giác đại diện cho các vòng tròn và các cạnh nơi các vòng tròn gặp nhau. Các cạnh thẳng sẽ luôn rơi dọc theo các đường giao nhau của vòng tròn , nhưng có thể không tuân theo toàn bộ chiều dài của các đường này.
Theo gợi ý của mbomb007 , hãy tưởng tượng hành vi của bong bóng xà phòng 2D. Điều đó sai về mặt kỹ thuật, bởi vì bong bóng xà phòng sẽ luôn gặp nhau ở góc 120 ° để giảm thiểu năng lượng, trong khi những vòng tròn này có thể gặp nhau ở mọi góc độ.
Đây là sơ đồ Voronoi, trừ đi một mặt phẳng diện tích xác định. Cảm ơn Andreas . Đây thực sự là một khái quát của sơ đồ Voronoi gọi là sơ đồ công suất .
Ví dụ
Ví dụ: cho hai điểm và hai bán kính, đầu ra có thể trông như thế này:
Thêm một điểm và bán kính khác và đầu ra có thể trông như thế này:
Đầu vào
Bạn có thể cấu trúc đầu vào theo cách bạn muốn. Vui lòng gửi kết quả với các đầu vào sau.
Kiểm tra 1
- x: 10, y: 10, r: 10
- x: 25, y: 12, r: 8
Kiểm tra 2
- x: 8, y: 10, r: 6
- x: 20, y: 8, r: 4
- x: 18, y: 20, r: 12
Đầu ra
Đầu ra phải là đồ họa và nên bao gồm các đường viền đa giác, nhưng không có gì khác được yêu cầu. Các điểm và giao điểm không cần phải được thể hiện giống như trong các ví dụ.
Những ràng buộc
- Không có điểm sẽ tồn tại trong bán kính của một vòng tròn khác.
- Quy tắc codegolf tiêu chuẩn.
- Không có câu trả lời với sơ hở sẽ được chấp nhận, nhưng hãy thoải mái vui chơi với nó.