from __future__ import annotations







def     A__	(       __A						):







    '''simple docstring'''
    _lowerCamelCase  :		int			    =    sorted(_SCREAMING_SNAKE_CASE						)
    _lowerCamelCase  :		Optional[int]			    =    len(_SCREAMING_SNAKE_CASE						)
    _lowerCamelCase  :		Union[str, Any]			    =    length >> 1
    return (
        (sorted_list[mid_index] + sorted_list[mid_index - 1]) / 2
        if length % 2 == 0
        else sorted_list[mid_index]
    )







def     A__	(       ):







    '''simple docstring'''
    import doctest

    doctest.testmod()


if __name__ == "__main__":
    main()





"""simple docstring"""







def 						_lowercase				(  _SCREAMING_SNAKE_CASE				:				list[int]						)    ->     int:







     '''simple docstring'''


     if not isinstance(_SCREAMING_SNAKE_CASE  ,       _SCREAMING_SNAKE_CASE						) or not all(
         isinstance(_SCREAMING_SNAKE_CASE  ,       _SCREAMING_SNAKE_CASE						) and item >= 0 for item in citations						):
          raise ValueError('The citations should be a list of non negative integers.'						)

     citations.sort()
     __A					:					Any								=		len(_SCREAMING_SNAKE_CASE						)

     for i in range(_SCREAMING_SNAKE_CASE						):
          if citations[len_citations - 1 - i] <= i:
               return i

     return len_citations


if __name__ == "__main__":
       import doctest

       doctest.testmod()



