Why can tuple-unpacking provide a correct result when using two lines doesn't?Unpacking a list / tuple of pairs into two lists / tuplesWhy do these two similar pieces of code produce different results?Theta(n**2) and Theta(n*lgn) algorithm perform unproperlySwapping maximum and minimum values in a listReceiving a ValueError during max() operationHow to implement the Softmax function in PythonWhy doesn't this code display any output?From LeetCode Given an array of integers, return indices of the two numbers such that they add up to a specific targetWhy does this greedy algorithm work?In Python how do I get the max value of a 'column' in a 2D array?
Reflecting Telescope Blind Spot?
Should I move out from my current apartment before the contract ends to save more money?
Support Structures for Green beans and peas
Struggling to present results from long papers in short time slots
Can artificial satellite positions affect tides?
The title "Mord mit Aussicht" explained
Can an escape pod land on Earth from orbit and not be immediately detected?
Does PC weight have a mechanical effect?
Manager wants to hire me; HR does not. How to proceed?
How do credit card companies know what type of business I'm paying for?
How would Japanese people react to someone refusing to say “itadakimasu” for religious reasons?
Is fission/fusion to iron the most efficient way to convert mass to energy?
Is there a risk to write an invitation letter for a stranger to obtain a Czech (Schengen) visa?
How to address players struggling with simple controls?
Co-worker is now managing my team, does this mean that I'm being demoted?
How can this shape perfectly cover a cube?
Does anyone recognize these rockets, and their location?
Idiom for 'person who gets violent when drunk"
Jam with honey & without pectin has a saucy consistency always
What made the Ancient One do this in Endgame?
Do legislators hold the right of legislative initiative?
At zero velocity, is this object neither speeding up nor slowing down?
New Site Design!
My parents claim they cannot pay for my college education; what are my options?
Why can tuple-unpacking provide a correct result when using two lines doesn't?
Unpacking a list / tuple of pairs into two lists / tuplesWhy do these two similar pieces of code produce different results?Theta(n**2) and Theta(n*lgn) algorithm perform unproperlySwapping maximum and minimum values in a listReceiving a ValueError during max() operationHow to implement the Softmax function in PythonWhy doesn't this code display any output?From LeetCode Given an array of integers, return indices of the two numbers such that they add up to a specific targetWhy does this greedy algorithm work?In Python how do I get the max value of a 'column' in a 2D array?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I was working on the "maximum product subarray" problem and I ran into an issue with my code
The way I solved this problem was
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution would give me 72 but the code that would give the correct solution is:
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution and the correct solution seem to do the same thing. Why would
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
vs
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
make such a big difference?
python python-3.x greedy
add a comment |
I was working on the "maximum product subarray" problem and I ran into an issue with my code
The way I solved this problem was
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution would give me 72 but the code that would give the correct solution is:
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution and the correct solution seem to do the same thing. Why would
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
vs
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
make such a big difference?
python python-3.x greedy
Pay attention to whenmaxProdchanges! WhichmaxProddo you want to use when calculatingminProd?
– hpaulj
Mar 25 at 2:43
add a comment |
I was working on the "maximum product subarray" problem and I ran into an issue with my code
The way I solved this problem was
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution would give me 72 but the code that would give the correct solution is:
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution and the correct solution seem to do the same thing. Why would
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
vs
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
make such a big difference?
python python-3.x greedy
I was working on the "maximum product subarray" problem and I ran into an issue with my code
The way I solved this problem was
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution would give me 72 but the code that would give the correct solution is:
def maxProduct(nums):
minProd = maxProd = maximum = nums[0]
for i in range(1, len(nums)):
currentNum = nums[i]
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
maximum = max(maximum, maxProd)
return maximum
print(maxProduct([-4, -3, -2]))
My solution and the correct solution seem to do the same thing. Why would
maxProd, minProd = max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
vs
maxProd = max(currentNum, currentNum*maxProd, currentNum*minProd)
minProd = min(currentNum, currentNum*maxProd, currentNum*minProd)
make such a big difference?
python python-3.x greedy
python python-3.x greedy
edited Mar 25 at 2:54
Charles Duffy
186k28215269
186k28215269
asked Mar 25 at 2:29
radhiradhi
1197
1197
Pay attention to whenmaxProdchanges! WhichmaxProddo you want to use when calculatingminProd?
– hpaulj
Mar 25 at 2:43
add a comment |
Pay attention to whenmaxProdchanges! WhichmaxProddo you want to use when calculatingminProd?
– hpaulj
Mar 25 at 2:43
Pay attention to when
maxProd changes! Which maxProd do you want to use when calculating minProd?– hpaulj
Mar 25 at 2:43
Pay attention to when
maxProd changes! Which maxProd do you want to use when calculating minProd?– hpaulj
Mar 25 at 2:43
add a comment |
1 Answer
1
active
oldest
votes
What is the value of maxProd when you calculate the second value?
In the first example,
max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
is calculated and then unpacked and assigned.
In the second example, the new maxProd value is calculated and assigned, and then used in the second calculation.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55330548%2fwhy-can-tuple-unpacking-provide-a-correct-result-when-using-two-lines-doesnt%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
What is the value of maxProd when you calculate the second value?
In the first example,
max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
is calculated and then unpacked and assigned.
In the second example, the new maxProd value is calculated and assigned, and then used in the second calculation.
add a comment |
What is the value of maxProd when you calculate the second value?
In the first example,
max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
is calculated and then unpacked and assigned.
In the second example, the new maxProd value is calculated and assigned, and then used in the second calculation.
add a comment |
What is the value of maxProd when you calculate the second value?
In the first example,
max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
is calculated and then unpacked and assigned.
In the second example, the new maxProd value is calculated and assigned, and then used in the second calculation.
What is the value of maxProd when you calculate the second value?
In the first example,
max(currentNum, currentNum*maxProd, currentNum * minProd), min(currentNum, currentNum*maxProd, currentNum*minProd)
is calculated and then unpacked and assigned.
In the second example, the new maxProd value is calculated and assigned, and then used in the second calculation.
answered Mar 25 at 2:39
Patrick HaughPatrick Haugh
33.3k93252
33.3k93252
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55330548%2fwhy-can-tuple-unpacking-provide-a-correct-result-when-using-two-lines-doesnt%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Pay attention to when
maxProdchanges! WhichmaxProddo you want to use when calculatingminProd?– hpaulj
Mar 25 at 2:43