[10062] Chu vi đa giác lồi
Xem dạng PDF🤔 Mô tả bài toán:
Một đa giác lồi N đỉnh trên mặt phẳng Oxy được mô tả bằng danh sách tọa độ các đỉnh theo đúng chiều kim đồng hồ. Mỗi đỉnh gồm: Tên đỉnh (1 ký tự), Tọa độ x (số nguyên), Tọa độ y (số nguyên).
Yêu cầu: Đọc từ tệp POLYGON.INP, tính chu vi của đa giác bằng cách cộng khoảng cách giữa các đỉnh liên tiếp (đỉnh 0 đến đỉnh 1, đỉnh 1 đến 2, ..., và đỉnh N-1 quay lại đỉnh 0). Ghi kết quả ra tệp POLYGON.OUT.
💾 Dữ liệu vào:
Cho từ tệp văn bản POLYGON.INP có dạng:
* Dòng 1 chứa số nguyên N (3 <= N <= 100).
N dòng tiếp theo, mỗi dòng chứa ký tự Tên đỉnh và hai số nguyên x, y.
💻 Dữ liệu ra:
Ghi ra tệp văn bản POLYGON.OUT gồm một dòng duy nhất: Một số thực duy nhất là chu vi đa giác (lấy chính xác 2 chữ số thập phân).
🔍 Ví dụ:
| POLYGON.INP | POLYGON.OUT |
|---|---|
| 4 A 0 0 B 0 3 C 4 3 D 4 0 | 14.00 *(Các khoảng cách là AB = 3, BC = 4, CD = 3, DA = 4 -> Tổng = 14)* |
📌 Ràng buộc dữ liệu:
+ Không có ràng buộc đặc biệt nào.
⚠️ Lưu ý về File I/O:
Bài tập yêu cầu đọc dữ liệu từ tệp tin POLYGON.INP và xuất kết quả ra tệp tin POLYGON.OUT.
Lưu ý: Vui lòng dùng freopen bình thường để đọc ghi (như code mẫu khi chấm Themis).
Mẹo: Bạn hoàn toàn có thể dùng lệnh ios_base::sync_with_stdio(false); cin.tie(NULL); đi kèm với freopen để tăng tốc độ đọc ghi dữ liệu lớn!
Bình luận