


def SCREAMING_SNAKE_CASE	(			__lowerCAmelCase							,   __lowerCAmelCase							,   __lowerCAmelCase				)    ->				int:

  def count_of_possible_combinations(__lowerCAmelCase				) -> int:
    if target < 0:
      return 0
    if target == 0:
      return 1
    return sum(count_of_possible_combinations(target - item				) for item in array				)

  return count_of_possible_combinations(__lowerCAmelCase				)







def SCREAMING_SNAKE_CASE	(			__lowerCAmelCase							,   __lowerCAmelCase							,   __lowerCAmelCase				)    ->				int:

  def count_of_possible_combinations_with_dp_array(
      __lowerCAmelCase							,   __lowerCAmelCase				) -> int:
    if target < 0:
      return 0
    if target == 0:
      return 1
    if dp_array[target] != -1:
      return dp_array[target]
    snake_case__						= sum(
        count_of_possible_combinations_with_dp_array(target - item							,   __lowerCAmelCase				)
        for item in array				)
    snake_case__						= answer
    return answer

  snake_case__						= [-1] * (target + 1)
  return count_of_possible_combinations_with_dp_array(__lowerCAmelCase							,   __lowerCAmelCase				)







def SCREAMING_SNAKE_CASE	(			__lowerCAmelCase							,   __lowerCAmelCase							,   __lowerCAmelCase				)    ->				int:
  snake_case__						= [0] * (target + 1)
  snake_case__						= 1

  for i in range(1							,   target + 1				):
    for j in range(__lowerCAmelCase				):
      if i - array[j] >= 0:
        dp_array[i] += dp_array[i - array[j]]

  return dp_array[target]


if __name__ == "__main__":
   import doctest

   doctest.testmod()
   lowerCamelCase__							:						Any							     =   3
   lowerCamelCase__							:						int							     =   5
   lowerCamelCase__							:						List[Any]							     =   [1, 2, 5]
   print(combination_sum_iv(n, array, target))









from ... import PretrainedConfig


UpperCAmelCase__							  =						{
    "sijunhe/nezha-cn-base": "https://huggingface.co/sijunhe/nezha-cn-base/resolve/main/config.json",
}






class 						lowercase_   (      lowercase  ):






      '''simple docstring'''




      __snake_case	    =    NEZHA_PRETRAINED_CONFIG_ARCHIVE_MAP
      __snake_case	    =    '''nezha'''







      def __init__( self :		Union[str, Any]					,   __UpperCAmelCase :		List[str]=21_128					,   __UpperCAmelCase :		Any=768					,   __UpperCAmelCase :		int=12					,   __UpperCAmelCase :		Optional[int]=12					,   __UpperCAmelCase :		Tuple=3_072					,   __UpperCAmelCase :		Union[str, Any]="gelu"					,   __UpperCAmelCase :		List[str]=0.1					,   __UpperCAmelCase :		Any=0.1					,   __UpperCAmelCase :		str=512					,   __UpperCAmelCase :		List[Any]=64					,   __UpperCAmelCase :		Tuple=2					,   __UpperCAmelCase :		List[Any]=0.02					,   __UpperCAmelCase :		List[str]=1e-1_2					,   __UpperCAmelCase :		int=0.1					,   __UpperCAmelCase :		Dict=0					,   __UpperCAmelCase :		Any=2					,   __UpperCAmelCase :		Optional[Any]=3					,   __UpperCAmelCase :		int=True					,   **__UpperCAmelCase :		Optional[Any]					,   )       ->Any:




       """simple docstring"""


       super().__init__(pad_token_id=__UpperCAmelCase					,   bos_token_id=__UpperCAmelCase					,   eos_token_id=__UpperCAmelCase					,   **__UpperCAmelCase    )

       a						    = vocab_size
       a						    = hidden_size
       a						    = num_hidden_layers
       a						    = num_attention_heads
       a						    = hidden_act
       a						    = intermediate_size
       a						    = hidden_dropout_prob
       a						    = attention_probs_dropout_prob
       a						    = max_position_embeddings
       a						    = max_relative_position
       a						    = type_vocab_size
       a						    = initializer_range
       a						    = layer_norm_eps
       a						    = classifier_dropout
       a						    = use_cache


