human
Maximum number of envelopes that can be put inside other bigger envelopes | Function that returns the maximum number of envelopes that can be inserted into another envelopes.
Number of envelopes.
Sort the envelopes in non - decreasing order.
Initialize dp [ ] array.
To store the result.
Loop through the array.
Find envelopes count for each envelope.
Store maximum envelopes count.
Return the result.
Driver Code.
Given the envelopes.
Function Call"
Solution in Python:
assistant
#Here is code to maximum number of envelopes that can be put inside other bigger envelopes and the other steps required.
 def maxEnvelopes ( envelopes ) :
	N = len ( envelopes )
	if ( N == 0 ) :
		return N
	envelopes = sorted ( envelopes )
	dp = [ 0 ] * N
	max_envelope = 1
	dp [ 0 ] = 1
	for i in range ( 1 , N ) :
		dp [ i ] = 1
		for j in range ( i ) :
			if ( envelopes [ i ] [ 0 ] > envelopes [ j ] [ 0 ] and envelopes [ i ] [ 1 ] > envelopes [ j ] [ 1 ] and dp [ i ] < dp [ j ] + 1 ) :
				dp [ i ] = dp [ j ] + 1
		max_envelope = max ( max_envelope , dp [ i ] )
	return max_envelope
if __name__ == ' _ _ main _ _ ' :
	envelopes = [ [ 4 , 3 ] , [ 5 , 3 ] , [ 5 , 6 ] , [ 1 , 2 ] ]
	print ( maxEnvelopes ( envelopes ) )