Tôi muốn xin lỗi tất cả các bài viết dưới đây. Chọn các diễn đàn sai để đăng này trong ban đầu. Tuy nhiên, thay vì biến điều này thành một sự lãng phí hoàn toàn, tôi đã làm lại câu hỏi để trở thành một vấn đề "Khoa học máy tính lý thuyết" thực sự.
Vấn đề: Tạo một thuật toán lấy một tập hợp n điểm theo thứ tự trong mặt phẳng 2D tạo thành đường viền của đa giác A đơn giản có thể hoặc không thể lõm và tạo đa giác B mới với m điểm sao cho:
- tất cả các điểm trong A được chứa trong B
- 3 <= m <n
- B là đa giác trong tập hợp tất cả các Bs có diện tích nhỏ nhất
- B phải là một đa giác đơn giản (nghĩa là không có giao điểm tự).
- Đầu vào của thuật toán là đa giác A và "m".
- Sự trùng hợp của các phân đoạn trong B với các phân khúc trong A được cho phép.
Một số ví dụ đầu vào và đầu ra dự kiến:
- Nếu A là hình vuông và m là 3 thì B sẽ là tam giác có diện tích bề mặt nhỏ nhất chứa A.
- Nếu A là một hình lục giác và m là 4 thì B sẽ là một hình tứ giác có diện tích bề mặt nhỏ nhất chứa A.
Chúc may mắn cho tất cả những người thử vấn đề này. Tôi có thể hứa với bạn điều này sẽ rất khó khăn đặc biệt là bây giờ giải pháp phải tối ưu.