Python Forum
Product of maximum in first array and minimum in second - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: General Coding Help (https://python-forum.io/forum-8.html)
+--- Thread: Product of maximum in first array and minimum in second (/thread-7650.html)



Product of maximum in first array and minimum in second - Thethispointer - Jan-19-2018

So I am practicing the following

Quote:Given two arrays of size N1 and N2 respectively, the task is to calculate the product of max element of first array and min element of second array.

https://practice.geeksforgeeks.org/problems/product-of-maximum-in-first-array-and-minimum-in-second/0

I was writing this program and got hung up on an error...

Wall
Quote:Traceback (most recent call last):
File "C:\Users\groundZero Admin\Documents\Python\arrayPracetice1.py", line 22, in <module>
y = A[i]
IndexError: list index out of range

#Given two arrays of size N1 and N2 respectively, the task is to 
#calculate the product of max element of first array and min
#element of second array.
#
#

A = [1, 50, 2, 7, 3, 8]
B = [1, 50, 2, 7, 3, 8, 75, 77, 0]

listALength = len(A)
listBLength = len(B)

#These print functions were used to test the len function on arrays during
#this study session. They're now commented out to make them inactive.
#print(listALength)
#print(listBLength)

#Take the length of the array - 1 to increment the list via a loop

x = A[0]
for i in A:
    y = A[i]
    if y > x:
        x = y

print(x)
Please help me! Thank you!


RE: Product of maximum in first array and minimum in second - j.crater - Jan-19-2018

The "i" in your line for i in A: is not an index as you have probably expected. It is the element of A accessed in a single iteration of for loop. Try this:
for i in A:
    print(i)
For getting indexes you can use enumerate. Here is an example:
my_list = ['one', 'two', 'three']
for i, number in enumerate(my_list):
    print(i, number)
As a side note, you may want to get yourself familiar with min() and max() Python functions.
Also, array in Python is called list, if you care about avoiding "foul language" ;P


RE: Product of maximum in first array and minimum in second - Thethispointer - Jan-19-2018

Awesome, awesome, awesome! Dance Thank you!

Here is the functional code, now let's add min() and max()... or maybe tomorrow morning as it's getting pretty late here in the Midwest.

#Given two Lists of size N1 and N2 respectively, the task is to 
#calculate the product of max element of first List and min
#element of second List.

A = [1, 50, 2, 7, 3, 8]
B = [1, 50, 2, 7, 3, 8, 75, 77, 0]

listALength = len(A)
listBLength = len(B)

x = A[0]
for i, number in enumerate(A):
    y = A[i]
    if y > x:
        x = y

print(x)


Okay, with min() and max().

#Given two Lists of size N1 and N2 respectively, the task is to 
#calculate the product of max element of first List and min
#element of second List.
A = [1, 50, 2, 7, 3, 8]
B = [1, 50, 2, 7, 3, 8, 75, 77, 0]
print(min(B) + max(A))



RE: Product of maximum in first array and minimum in second - j.crater - Jan-19-2018

Code looks much nicer/shorter. Except the task ultimately requires a product, not sum of those elements, if I understood right =)


RE: Product of maximum in first array and minimum in second - Thethispointer - Jan-19-2018

(Jan-19-2018, 07:08 AM)j.crater Wrote: Code looks much nicer/shorter. Except the task ultimately requires a product, not sum of those elements, if I understood right =)

Yes indeed you are correct! I guess I should read more carefully! Thank you again for your help, I will definitely post some more code onto the forum when I find another issue I am hung up on!


RE: Product of maximum in first array and minimum in second - j.crater - Jan-19-2018

No problem, we are glad to help! =)
Beside posting when you hit an obstacle, feel free to also post in Completed Scripts/Snippets subforum, if you would like to share your working code and get some feedback for improvement ;)


RE: Product of maximum in first array and minimum in second - Larz60+ - Jan-19-2018

Quote:Given two arrays of size N1 and N2 respectively, the task is to calculate the product of max element of first array and min element of second array.
>>> A = [1, 50, 2, 7, 3, 8]
>>> B = [1, 50, 2, 7, 3, 8, 75, 77, 0]
>>> max(A) * min(B)
0
>>>


RE: Product of maximum in first array and minimum in second - j.crater - Jan-19-2018

I guess that is alright. Example on the link Thethispointer provided even has a negative number in B list. So result can end up negative as well.


RE: Product of maximum in first array and minimum in second - Larz60+ - Jan-19-2018

>>> B = [1, 50, 2, 7, 3, 8, 75, 77, 0, -5]
>>> max(A) * min(B)
-250
>>>



RE: Product of maximum in first array and minimum in second - Thethispointer - Jan-19-2018

(Jan-19-2018, 04:44 PM)j.crater Wrote: No problem, we are glad to help! =)
Beside posting when you hit an obstacle, feel free to also post in Completed Scripts/Snippets subforum, if you would like to share your working code and get some feedback for improvement ;)
Yeah, I will do this!

(Jan-19-2018, 05:23 PM)Larz60+ Wrote:
Quote:Given two arrays of size N1 and N2 respectively, the task is to calculate the product of max element of first array and min element of second array.
>>> A = [1, 50, 2, 7, 3, 8]
>>> B = [1, 50, 2, 7, 3, 8, 75, 77, 0]
>>> max(A) * min(B)
0
>>>
Thank you! This is accurate