Advertisement
go6odn28

03. Planting Garden System

Jan 28th, 2025
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.33 KB | None | 0 0
  1. def plant_garden(available_space, *allowed_plant_types, **requested_plant_types):
  2.     allowed_space_per_plant = {p: space for p, space in allowed_plant_types}
  3.     sorted_requests = sorted(requested_plant_types.items())
  4.  
  5.     planted_plants = {}
  6.     all_planted = True
  7.  
  8.     for plant_type, quantity in sorted_requests:
  9.         if plant_type in allowed_space_per_plant:
  10.             space_per_plant = allowed_space_per_plant[plant_type]
  11.             required_space = space_per_plant * quantity
  12.  
  13.             if required_space <= available_space:
  14.                 planted_plants[plant_type] = quantity
  15.                 available_space -= required_space
  16.             else:
  17.                 all_planted = False
  18.                 max_plants = int(available_space // space_per_plant)
  19.                 if max_plants > 0:
  20.                     planted_plants[plant_type] = max_plants
  21.                     available_space -= max_plants * space_per_plant
  22.  
  23.     result = []
  24.  
  25.     if all_planted:
  26.         result.append(f'All plants were planted! Available garden space: {available_space:.1f} sq meters.')
  27.     else:
  28.         result.append('Not enough space to plant all requested plants!')
  29.  
  30.     result.append('Planted plants:')
  31.     for plant_type, quantity in planted_plants.items():
  32.         result.append(f'{plant_type}: {quantity}')
  33.  
  34.     return '\n'.join(result)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement