Alice got a money ticket from her uncle that represent an actual amount in dollars. Her uncle brought alice to a toy store and gave her 3 instructions. • Alice can buy up to 2 items. • Alice cannot buy duplicate items. • A total amount of these items cannot exceed the given amount . Alice wants to spend as much as possible within the budget amount . Can you help her create a shopping plan according the rules above? For example, suppose the store carries 3 items: iPad $399, iPhone $199, MacBook $2000 and say Alice was given $600. She would buy an iPad and an iPhone which total is $598. However, if Alice was only given $400, then she would only get an iPad for $399 to maximize the spending. Your task is to write a function best_shopping_plan(prices:list[int], amount: int) -> int that returns the highest possible total amount that Alice can spend without exceeding the given budget amount . The input list prices represents prices of each item in the this store. Specifically, prices[i] is the price of item i. And yes, multiple items can have the same price. When the store has no items, prices can be empty. Constraints: len(prices) < 50 Hint: Check all possibilities.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
100%

Python: Shopping Plan
Example: 

assert best_shopping_plan([], 1) == 0 # Alice cannot buy anything as there is no item in the store
 
assert best_shopping_plan([1], 1) == 1 # Alice can only buy that one item of price 1 given her budget amount
 
assert best_shopping_plan([1,2], 1) == 1 # Alice can only buy that one item of price 1 given her budget amount
 
assert best_shopping_plan([1,1,2], 2) == 2 # Alice can buy one item of price 2, or she can buy the two items of price 1
 
assert best_shopping_plan([1,2,3], 3) == 3 # Alice can buy one item of price 3, or she can buy the two items of price 1 and 2
 
assert best_shopping_plan([1,2,3,4], 10) == 7 # The best Alice can buy is for items of prices 3 and 4
 
assert best_shopping_plan([1,2,2,3,3,3], 10) == 6 # The best Alice can buy is for items of prices 3 and 3
 
assert best_shopping_plan([1,1,1,3,5,5], 7) == 6 # The best Alice can buy is for items of prices 1 and 5
Alice got a money ticket from her uncle that represent an actual amount in dollars. Her uncle brought alice to a toy
store and gave her 3 instructions.
• Alice can buy up to 2 items.
• Alice cannot buy duplicate items.
• A total amount of these items cannot exceed the given amount .
Alice wants to spend as much as possible within the budget amount . Can you help her create a shopping plan
according the rules above? For example, suppose the store carries 3 items: iPad $399, iPhone $199, MacBook $2000
and say Alice was given $600. She would buy an iPad and an iPhone which total is $598. However, if Alice was only
given $400, then she would only get an iPad for $399 to maximize the spending.
Your task is to write a function best_shopping_plan(prices:list[int], amount: int) -> int that returns the highest
possible total amount that Alice can spend without exceeding the given budget amount . The input list prices
represents prices of each item in the this store. Specifically, prices[i] is the price of item i. And yes, multiple items
can have the same price. When the store has no items, prices can be empty.
Constraints: len(prices) < 50
Hint: Check all possibilities.
Transcribed Image Text:Alice got a money ticket from her uncle that represent an actual amount in dollars. Her uncle brought alice to a toy store and gave her 3 instructions. • Alice can buy up to 2 items. • Alice cannot buy duplicate items. • A total amount of these items cannot exceed the given amount . Alice wants to spend as much as possible within the budget amount . Can you help her create a shopping plan according the rules above? For example, suppose the store carries 3 items: iPad $399, iPhone $199, MacBook $2000 and say Alice was given $600. She would buy an iPad and an iPhone which total is $598. However, if Alice was only given $400, then she would only get an iPad for $399 to maximize the spending. Your task is to write a function best_shopping_plan(prices:list[int], amount: int) -> int that returns the highest possible total amount that Alice can spend without exceeding the given budget amount . The input list prices represents prices of each item in the this store. Specifically, prices[i] is the price of item i. And yes, multiple items can have the same price. When the store has no items, prices can be empty. Constraints: len(prices) < 50 Hint: Check all possibilities.
Expert Solution
steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY