func checkOverlap(r, x, y, x1, y1, x2, y2 int) bool {
if x >= x1 && x <= x2 && y >= y1 && y <= y2 {
return true
} else if x >= x1 && x <= x2 && (y < y1 || y > y2) {
if (y1 - y > 0 && y1 - y <= r) || (y - y2 > 0 && y - y2 <= r) {
return true
}
} else if (x < x1 || x > x2) && y >= y1 && y <= y2 {
if (x1 - x > 0 && x1 - x <= r) || (x - x2 > 0 && x - x2 <= r) {
return true
}
} else if ((x - x1) * (x - x1) + (y - y1) * (y - y1) <= r * r) ||
((x - x2) * (x - x2) + (y - y1) * (y - y1) <= r * r) ||
((x - x1) * (x - x1) + (y - y2) * (y - y2) <= r * r) ||
((x - x2) * (x - x2) + (y - y2) * (y - y2) <= r * r) {
return true
}
return false
}
[LeetCode][Go] Leetcode 1401. Circle and Rectangle Overlapping
最新推荐文章于 2024-05-04 03:45:26 发布