easy understandable approch
Intuition\n Describe your first thoughts on how to solve this problem. \n\n# Approach\nkeep tracking of dirction and movement which we want to make . updating t
# Intuition\n<!-- Describe your first thoughts on how to solve this problem. -->\n\n# Approach\nkeep tracking of dirction and movement which we want to make . updating the position and appending the updated poition to the list through a simple condition.\n\n# Complexity\n- Time complexity:\nO(rows * cols)\n\n- Space complexity:\n<!-- Add your space complexity here, e.g. $$O(n)$$ -->\n\n# Code\n```\nclass Solution:\n    def spiralMatrixIII(self, rows: int, cols: int, rStart: int, cStart: int) -> List[List[int]]:\n        \n        direction=1\n        lst=[]\n        \n        pos=[rStart,cStart]\n\n        lst.append(pos)\n\n        movement=1\n\n        while(len(lst)<rows*cols):\n\n            if direction==1:\n                c=0\n                while c<movement:\n                    cStart=cStart+1\n                    pos=[rStart,cStart]\n                    if rStart>=0 and rStart<rows and cStart>=0 and cStart<cols: \n                        lst.append(pos)\n                    c+=1\n                direction=2\n           \n            if direction==2:\n                c=0\n                while c<movement:\n                    rStart=rStart+1\n                    pos=[rStart,cStart]\n                    if rStart>=0 and rStart<rows and cStart>=0 and cStart<cols:\n                        lst.append(pos)\n                    c+=1\n                direction=3\n                movement+=1\n           \n            if direction==3:\n                c=0\n                while c<movement:\n                    cStart=cStart-1\n                    pos=[rStart,cStart]\n                    if rStart>=0 and rStart<rows and cStart>=0 and cStart<cols: \n                        lst.append(pos)\n                    c+=1\n                direction=4\n          \n            if direction==4:\n                c=0\n                while c<movement:\n                    rStart=rStart-1\n                    pos=[rStart,cStart]\n                    if rStart>=0 and rStart<rows and cStart>=0 and cStart<cols:\n                        lst.append(pos)\n                    c+=1\n                direction=1\n                movement+=1\n          \n        return lst\n\n```
['Matrix', 'Simulation', 'Python3']