Tính Khoảng Cách Euclid Giữa Hai Điểm 2D
Hình học tính toán và đồ họa máy tính sử dụng khoảng cách Euclid như thước đo cơ bản để tính độ dài đoạn thẳng, phát hiện va chạm và đo độ tương đồng không gian. Việc thực hiện chí…

Mô hình hóa và xử lý các bài toán điểm, đường thẳng, góc và đa giác trong không gian 2D với độ chính xác số học cao, tránh sai số dấu phẩy động.
bài tập có chấm code
Bài tập theo chuyên đề, có đề bài, ví dụ và starter code riêng.
cơ bản
Củng cố nền tảng và làm quen với kỹ thuật cốt lõi.
trung bình
Kết hợp nhiều bước suy luận để vận dụng kiến thức.
nâng cao
Thử thách tối ưu, cấu trúc dữ liệu và thuật toán chuyên sâu.
Xây dựng struct Point { double x, y; } và các phép toán cộng trừ vector.
Xác định hướng quay (ngược chiều/thuận chiều kim đồng hồ) và diện tích tam giác.
Kiểm tra hai đoạn thẳng cắt nhau và tính diện tích đa giác bằng công thức Shoelace.
Cài đặt thuật toán Andrew/Monotone Chain tìm tập bao lồi trong O(N log N).
So sánh hai số thực bằng == thay vì dùng hằng số epsilon (abs(a - b) < EPS).
Sai số tràn kiểu số nguyên khi tính tích có hướng của tọa độ lớn (cần ép kiểu sang long long hoặc __int128).
Trong mỗi mức độ, bài tập được xếp từ dễ nhất đến khó nhất — hãy đi theo số bước.
Hình học tính toán và đồ họa máy tính sử dụng khoảng cách Euclid như thước đo cơ bản để tính độ dài đoạn thẳng, phát hiện va chạm và đo độ tương đồng không gian. Việc thực hiện chí…
Cho hai hình tròn C1(x1, y1, r1) và C2(x2, y2, r2) trên mặt phẳng Oxy.
Thuật toán chuyên sâu: quy hoạch động, đồ thị, cây.
Cho một đa giác đơn gồm N đỉnh có tọa độ nguyên. Hãy tính:
Một nửa mặt phẳng có hướng được biểu diễn bởi tia đi từ điểm P đến điểm Q, quy ước nửa mặt phẳng hợp lệ nằm ở phía bên trái của vector PQ (tức là PQ × PX…
Cho N điểm trên mặt phẳng 2D. Hãy tìm bình phương khoảng cách Euclid nhỏ nhất giữa hai điểm bất kỳ trong tập điểm.
Cho một đa giác gồm N đỉnh V1, V2, …, VN theo thứ tự duyệt viền. Bạn cần trả lời M truy vấn, mỗi truy vấn cho một điểm P(X, Y) và yêu cầu xác định P nằm INSIDE, BOUNDARY hay…
Cho một đa giác đơn (không tự cắt, không nhất thiết lồi) gồm N đỉnh P0, P1, …, PN-1.
Cấu trúc dữ liệu nâng cao và nhiều bước chứng minh.
Cho tập hợp N điểm phân biệt trên mặt phẳng tọa độ Oxy. Quá trình tách lớp vỏ hành (Convex Layers) diễn ra như sau:
Cho N điểm trên mặt phẳng 2D. Hãy tìm tập các đỉnh của bao lồi đa giác chứa toàn bộ N điểm này. Nếu có nhiều điểm thẳng hàng trên cạnh của bao lồi, chỉ giữ lại các điểm ở hai đầu m…
Cho hai đa giác lồi P (gồm N đỉnh) và Q (gồm M đỉnh) trên mặt phẳng Oxy. Các đỉnh của mỗi đa giác được liệt kê theo chiều ngược chiều kim đồng hồ (CCW).
Cho một tập hợp các đoạn thẳng không cắt nhau (chỉ có thể tiếp xúc tại mút) chia mặt phẳng thành các miền. Ta xét bài toán đơn giản hóa chuẩn: Cho N đoạn thẳng nằm ngang hoặc xiên…
Cho tập hợp N điểm trong không gian 3 chiều R3. Hãy tính diện tích bề mặt (surface area) của bao lồi 3D tạo bởi N điểm này.