input: Write a python function to find the maximum number of items that can be bought with a given budget and a list of item prices.
  assert max_items_with_budget(1000, [('itemA', 10), ('itemB', 20), ('itemC', 30)]) == 100
  assert max_items_with_budget(50, [('itemA', 25), ('itemB', 30)]) == 2
  assert max_items_with_budget(0, [('itemA', 10)]) == 0
output: def max_items_with_budget(budget, items):
      total_items = 0
      prices = sorted(price for item, price in items)
      
      for price in prices:
          if budget >= price:
              max_possible = budget // price
              total_items += max_possible
              budget -= price * max_possible
          else:
              break
              
      return total_items