Given an array of set of points in the X-Y plane. The task is to find the minimum area of a rectangle that can be formed from these points. The sides of the rectangle should be parallel to the X and Y axes. If a rectangle cannot be formed with the given points then print 0.
Examples:
Input: [[1, 1], [1, 3], [3, 1], [3, 3], [2, 2]]
Output: 4
Input: [[1, 1], [1, 3], [3, 1], [3, 3], [4, 1], [4, 3]]
Output: 2
import collections def Area(A): dict = collections.defaultdict(list) for x, y in A: dict[x].append(y) L = {} ans = float('inf') for x in sorted(dict): column = dict[x] column.sort() for j, y2 in enumerate(column): for i in range(j): y1 = column[i] if (y1, y2) in L: ans = min(ans, (x - L[y1, y2]) * (y2 - y1)) L[y1, y2] = x if ans < float('inf'): return ans else: return 0 N=int(input('Enter the number of Coordinates : ')) print("Enter the Coordinates : ") A=[] for i in range(N): A.append(list(map(int,input('').split(' ')))) print('The Coordinates are : ',A) print(Area(A))
Input_1:
Enter the number of Coordinates : 5
Enter the Coordinates :
1 1
1 3
3 1
3 3
2 2
The Coordinates are : [[1, 1], [1, 3], [3, 1], [3, 3], [2, 2]]
Output:
4
Input_2:
Enter the number of Coordinates : 6
Enter the Coordinates :
1 1
1 3
3 1
3 3
4 1
4 3
The Coordinates are : [[1, 1], [1, 3], [3, 1], [3, 3], [4, 1], [4, 3]]
Output:
2
Sample Output Picture ?
More Q
- Find the majority element appearing more than n/2 times
- Return an array of the squares of each number.
- Highest factor in addition.
- Find the empty packets(0) of chocolate and push it to the end of the conveyor belt(array).
- Every element in array appears twice.Find that single one.
- Find the duplicate letters in string. Same to do in dictionary way.
- Find minimum number of edits (operations) required to convert ‘str1’ into ‘str2’.
- Return the maximum number you can get by changing at most one digit.
- Sed Commands – Ranges of lines.
- Find the kth smallest element in the given 2D array.
- Find all elements that appear more than [n/3] times.
- Write a function to return true if s2 contains the permutation of s1.
- Sort the array into a wave like array.
- Re-order array, such that
nums[0] < nums[1] > nums[2] < nums[3]...
. - Given the coordinates, return true if the four points construct a square.
- Minimum Distance Between Words of a String.
- Return the shortest distance between these two words.
- Write a program to find the n-th ugly number.
- Check if array could become Non – Decreasing array.
- Find the minimum area of a rectangle that can be formed from given points.