vector<vector<int>>generateMatrix(intn){vector<vector<int>>res(n,vector<int>(n));intr1=0,r2=n-1,c1=0,c2=n-1,val=0;// 特殊处理n = 1if(n=1)res[r1][c1]=1;while(r1<=r2&&c1<=c2){// left --> right (区间左闭右开进行处理)for(inti=c1;i<c2;i++)res[r1][i]=++val;// top --> downfor(inti=r1;i<r2;i++)res[i][c2]=++val;// right --> leftfor(inti=c2;i>c1;i--)res[r2][i]=++val;// down --> topfor(inti=r2;i>r1;i--)res[i][c1]=++val;r1++,c1++,r2--,c2--;// 填充中间的值if(r1==r2&&c1==c2)res[r1][c1]=++val;}returnres;}