HardRating 2457
1782. Count Pairs Of Nodes
arrayhash-tabletwo-pointersbinary-searchgraphsortingcounting
解題說明
C++ 解法
複雜度分析
虛擬碼
1. Compute degree of each node and count of each edge (u,v) pair
2. Sort degrees
3. For each query q:
a. Two pointers on sorted degrees: count pairs where deg[lo] + deg[hi] > q
b. For each distinct edge (u,v) with count c:
- If degree[u] + degree[v] > q but degree[u] + degree[v] - c <= q: count--
c. Append count to answer
4. Return answer