Back to Practice Dashboard
Python BasicsEasy

Find all Symmetric pairs in an array

Learn how to solve the 'Find all Symmetric pairs in an array' problem. This detailed resource details brute force and optimized approaches.

Problem Statement

Easy

Write a function symmetric_pairs(arr) that takes a list of pairs (list of 2-element lists) and returns all symmetric pairs. A pair [a, b] is symmetric with another pair [b, a] if both exist in the array. Return the result as a sorted list of pairs where the first element of the pair is smaller. Each symmetric pair should appear only once.

Constraints
  • 1 <= len(arr) <= 10^4
  • Each element is a list of 2 integers
  • -10^6 <= arr[i][j] <= 10^6

Examples

Example 1
Input
arr = [[1, 2], [2, 1], [3, 4], [4, 3], [5, 6]]
Output
[[1, 2], [3, 4]]
Explanation

[1,2] and [2,1] are symmetric. [3,4] and [4,3] are symmetric. [5,6] has no symmetric pair.

Example 2
Input
arr = [[1, 2], [3, 4]]
Output
[]
Explanation

No pair has its reverse in the array.

Example 3
Input
arr = [[10, 20], [20, 10]]
Output
[[10, 20]]
Explanation

[10,20] and [20,10] form a symmetric pair.

Need a Hint?
Use simple arithmetic operators (like modulo `%`, division `//`), conditional checks, or loops to inspect number properties.
Edge Cases to Watch
  • Empty list or null input variables
  • Single item lists/arrays
  • Extremely large input bounds causing integer or stack overflow

Ready to Solve?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Open in Editor