# Solving Leetcode Interviews in Seconds with AI: Sort the People


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "2418" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> You are given an array of strings names, and an array heights that consists of distinct positive integers. Both arrays are of length n. For each index i, names[i] and heights[i] denote the name and height of the ith person. Return names sorted in descending order by the people's heights.   Example 1:  Input: names = ["Mary","John","Emma"], heights = [180,165,170] Output: ["Mary","Emma","John"] Explanation: Mary is the tallest, followed by Emma and John.  Example 2:  Input: names = ["Alice","Bob","Bob"], heights = [155,185,150] Output: ["Bob","Alice","Bob"] Explanation: The first Bob is the tallest, followed by Alice and the second Bob.    Constraints:  n == names.length == heights.length 1 <= n <= 103 1 <= names[i].length <= 20 1 <= heights[i] <= 105 names[i] consists of lower and upper case English letters. All the values of heights are distinct.  

	# Explanation
	*   Create a list of tuples where each tuple contains a height and the corresponding name.
*   Sort the list of tuples in descending order based on the height.
*   Extract the names from the sorted list of tuples.

*   Runtime Complexity: O(n log n), Storage Complexity: O(n)

	
	# Code
	```python
	def sort_by_height(names, heights):
    """
    Sorts an array of names by the corresponding heights in descending order.

    Args:
        names: A list of strings representing the names of people.
        heights: A list of integers representing the heights of people.

    Returns:
        A list of strings representing the names sorted by height in descending order.
    """

    people = list(zip(heights, names))
    people.sort(reverse=True)
    sorted_names = [name for height, name in people]
    return sorted_names
	```
			
