code: def ff(items, targets):
      
      bins = [(target, []) for target in targets]
      skip = []
  
      for item in items:
          for target, content in bins:
              if item <= (target - sum(content)):
                  content.append(item)
                  break
          else:
              skip.append(item)
      return bins, skip
docs: First-Fit
  
      This is perhaps the simplest packing heuristic;
      it simply packs items in the next available bin.
  
      Complexity O(n^2)