和矩阵移位一样,对比前后找规律

class Solution {
public:
    vector<vector<int> > rotateMatrix(vector<vector<int> > mat, int n) {
      for (int i = 0; i < n; ++i) {
        for (int j = 0; j < i; ++j) {
          //  交换上三角和下三角
          std::swap(mat[i][j], mat[j][i]);
        }
      }
      
      for (int i = 0; i < n; ++i) {
        std::reverse(mat[i].begin(), mat[i].end());
      }
      
      return mat;
    }
};