Rotate Image

class Solution:
    def rotate(self, matrix: List[List[int]]) -> None:
        
        matrix.reverse()
        
        N = len(matrix)
        for rx in range(N):
            for cx in range(1 + rx, N):
                matrix[rx][cx], matrix[cx][rx] = matrix[cx][rx], matrix[rx][cx]

import math

class Solution:    
    def rotate(self, matrix):
        nR, rlim = len(matrix), math.ceil(nR / 2)
        nC, clim = len(matrix[0]), math.floor(nC / 2)
        m = matrix
        for cx in range(clim):
            for rx in range(rlim):
                iR, sR = rx, nR - rx - 1
                iC, sC = cx, nC - cx - 1
                temp = m[sC][iR], m[sR][sC], m[iC][sR], m[iR][iC]
                m[iR][iC], m[sC][iR], m[sR][sC], m[iC][sR] = temp