


'''simple docstring'''






from collections import defaultdict

from graphs.minimum_spanning_tree_prims import prisms_algorithm as mst






def 		_A			()				->					int:
     _a ,				_a      =							9, 14  # noqa: F841
     _a      =							[
         [0, 1, 4],
         [0, 7, 8],
         [1, 2, 8],
         [7, 8, 7],
         [7, 6, 1],
         [2, 8, 2],
         [8, 6, 6],
         [2, 3, 7],
         [2, 5, 4],
         [6, 5, 2],
         [3, 5, 14],
         [3, 4, 9],
         [5, 4, 10],
         [1, 7, 11],
     ]

     _a      =							defaultdict(__UpperCAmelCase						)
     for nodea, nodea, cost in edges:
          adjancency[nodea].append([nodea, cost]						)
          adjancency[nodea].append([nodea, cost]						)

     _a      =							mst(__UpperCAmelCase						)

     _a      =							[
         [7, 6, 1],
         [2, 8, 2],
         [6, 5, 2],
         [0, 1, 4],
         [2, 5, 4],
         [2, 3, 7],
         [0, 7, 8],
         [3, 4, 9],
     ]

     for answer in expected:
          _a      =							tuple(answer[:2]						)
          _a      =							tuple(edge[::-1]						)
          assert edge in result or reverse in result





'''simple docstring'''






def 		_A			(lowerCAmelCase__					:int						)				->					int:




     '''simple docstring'''



     assert (
         isinstance(lowerCAmelCase__			,  lowerCAmelCase__						) and number_of_steps > 0
     ), f'number_of_steps needs to be positive integer, your input {number_of_steps}'
     if number_of_steps == 1:
          return 1
     _a ,				_a      =							1, 1
     for _ in range(number_of_steps - 1						):
          _a ,				_a      =							current + previous, current
     return current


if __name__ == "__main__":
 import doctest

 doctest.testmod()

