概念:第 k 個面,會被前 (k - 1) 個面畫出 (k - 1) 條交叉線,交叉線將第 k 個面分割成 個區塊,此區塊數即第 k 個面在空間上所增加的空間數
空間數總和為
1. 可以用迴圈去跑
sum = 1;
for (int k = 1; k <= n; ++k) {
sum += 1 + k * (k - 1) / 2;
}
2. 或者整理公式
直接套用
cout << 1 + n + n * (n + 1) * (n - 1) / 6 << endl;
概念:第 k 個面,會被前 (k - 1) 個面畫出 (k - 1) 條交叉線,交叉線將第 k 個面分割成 個區塊,此區塊數即第 k 個面在空間上所增加的空間數
空間數總和為
1. 可以用迴圈去跑
sum = 1;
for (int k = 1; k <= n; ++k) {
sum += 1 + k * (k - 1) / 2;
}
2. 或者整理公式
直接套用
cout << 1 + n + n * (n + 1) * (n - 1) / 6 << endl;
這樣會不會比較好