Steward
分享是一種喜悅、更是一種幸福
程式語言 - LeetCode - C++ - 59. Spiral Matrix II
題目:

解答:
class Solution {
public:
vector<vector<int>> generateMatrix(int n) {
int l = 0;
int r = n - 1;
int t = 0;
int b = n - 1;
int num = 1;
vector<vector<int>> ans(n, vector<int>(n, 0));
while ((l <= r) && (t <= b)) {
for (int i = l; i <= r; ++i) {
ans[t][i] = num++;
}
t += 1;
for (int i = t; i <= b; ++i) {
ans[i][r] = num++;
}
r -= 1;
if (t <= b) {
for (int i = r; i >= l; --i) {
ans[b][i] = num++;
}
b -= 1;
}
if (l <= r) {
for (int i = b; i >= t; --i) {
ans[i][l] = num++;
}
l += 1;
}
}
return ans;
}
};