//对矩阵中轴水平反转,对每层未被交换过的元素进行规则交换;
void rotate(vector<vector<int> > &matrix) {
int n=matrix.size()-1;
for(int x=0;x<=(n/2);x++)
for(int y=0;y<matrix.size();y++)
swap( matrix[x][y], matrix[n-x][y]);
for(int x=0;x<n+1;x++)
for(int y=x;y<n+1;y++)
swap( matrix[x][y],matrix[y][x]);
}
//对矩阵外层元素的n-1个矩阵进行逆旋转,总共有n/2层;
oid rotate(vector<vector<int> > &matrix) {
int n=matrix.size()-1;
for(int i=0; i<=n/2; ++i){
for(int j=i; j<n-i; ++j){
swap(matrix[i][j],matrix[n-j][i]);
swap(matrix[n-j][i],matrix[n-i][n-j]);
swap(matrix[n-i][n-j],matrix[j][n-i]);
}
}
}