

'''simple docstring'''

class 	lowerCAmelCase  :







       def __init__(				self      :			Any    ,   __lowercase      :			list[int]   ):







            """simple docstring"""







            __lowercase      		=len(__lowercase   )
            __lowercase      		=[0] * len_array

            if len_array > 0:
                 __lowercase      		=array[0]

            for i in range(1    ,   __lowercase   ):
                 __lowercase      		=self.prefix_sum[i - 1] + array[i]







       def       snake_case (				self      :			Any    ,   __lowercase      :			int    ,   __lowercase      :			int   ):







            """simple docstring"""







            if start == 0:
                 return self.prefix_sum[end]

            return self.prefix_sum[end] - self.prefix_sum[start - 1]







       def       snake_case (				self      :			Union[str, Any]    ,   __lowercase      :			int   ):







            """simple docstring"""







            __lowercase      		={0}
            for sum_item in self.prefix_sum:
                 if sum_item - target_sum in sums:
                      return True

                 sums.add(__lowercase   )

            return False


if __name__ == "__main__":
       import doctest

       doctest.testmod()





'''simple docstring'''

class 	lowerCAmelCase  :







       def __init__(				self      :			List[Any]    ,   __lowercase      :			str    ,   __lowercase      :			Any    ,   __lowercase      :			str   ):







            """simple docstring"""







            __lowercase      		=name
            __lowercase      		=value
            __lowercase      		=weight







       def __repr__(				self      :			List[str]   ):







            """simple docstring"""







            return f'''{self.__class__.__name__}({self.name}, {self.value}, {self.weight})'''







       def       snake_case (				self      :			List[Any]   ):







            """simple docstring"""







            return self.value







       def       snake_case (				self      :			str   ):







            """simple docstring"""







            return self.name







       def       snake_case (				self      :			Optional[Any]   ):







            """simple docstring"""







            return self.weight







       def       snake_case (				self      :			Tuple   ):







            """simple docstring"""







            return self.value / self.weight






def 					__UpperCamelCase				(						lowercase__    :	Dict,       lowercase__    :	List[str],       lowercase__    :	str			):






     '''simple docstring'''





     __lowercase      		=[]
     for i in range(len(lowercase__			)			):
          menu.append(Things(name[i],       value[i],       weight[i]			)			)
     return menu

def 					__UpperCamelCase				(						lowercase__    :	List[Any],       lowercase__    :	List[Any],       lowercase__    :	str			):






     '''simple docstring'''





     __lowercase      		=sorted(lowercase__,       key=lowercase__,       reverse=lowercase__			)
     __lowercase      		=[]
     __lowercase		,  __lowercase      		=0.0, 0.0
     for i in range(len(lowercase__			)			):
          if (total_cost + items_copy[i].get_weight()) <= max_cost:
               result.append(items_copy[i]			)
               total_cost += items_copy[i].get_weight()
               total_value += items_copy[i].get_value()
     return (result, total_value)

def 					__UpperCamelCase				(						):






     '''simple docstring'''







if __name__ == "__main__":
       import doctest

       doctest.testmod()


