Shoe shop =========== The supplies of a shoe shop are represented by a list of articles corresponding to shoe sizes. An article is represented with a list of two integers that stand for, respectively, the size and the number of pairs of shoes of this size stored in the shoe shop. The list of articles is not ordered according to any criteria and each size only appears once. #. Write the function :py:func:`shoeshop1` that from a list of articles and two integers corresponding to two sizes, ``s1`` and ``s2``, returns that size between ``s1`` and ``s2`` (both included) with the maximum number of pairs of shoes. If there were more than one size fulfilling these requirements, the first one encountered must be returned. If there is any size fulfilling these requirements, or the given list is empty, the function will return -1. Save this function into the file ``shoeshop1.py``. Examples: .. literalinclude:: test-shoeshop1.txt :language: python3 :lines: 3- .. note:: More tests are provided in file :download:`test-shoeshop1.txt ` .. rubric:: Solution A solution of this function is provided in the :download:`shoeshop1.py ` #. Save this function as well as the next ones into the same file ``shoeshop2.py``. Write the function :py:func:`search_size` that from a list of articles and an integer indicating a size, returns the position in the list of articles of the article corresponding to that size. If the size does not appear in the list of articles, this function must return -1. Examples: .. literalinclude:: test-shoeshop2.txt :language: python3 :lines: 3- .. note:: More tests are provided in file :download:`test-shoeshop2.txt ` #. Write the **modifier** function :py:func:`update_size` that from a list of articles, an integer indicating the position of an article and another integer indicating a number of pairs of shoes, updates the list by increasing the units of the article corresponding to the given position with the given amount of pairs of shoes. Examples: .. literalinclude:: test-shoeshop3.txt :language: python3 :lines: 3- .. note:: More tests are provided in file :download:`test-shoeshop3.txt ` #. Write the **modifier** function :py:func:`update_stock` that given a list of items corresponding to the supplies of the shoe shop and another list of articles corresponding to new pairs of shoes entering to the shop, updates the first list with the entries in the second list. This function must call the previous two functions. Examples: .. literalinclude:: test-shoeshop4.txt :language: python3 :lines: 3- .. note:: More tests are provided in file :download:`test-shoeshop4.txt ` .. rubric:: Solution A solution of this function and the two previous ones is provided in file :download:`shoeshop2.py `