1 条题解
-
0$$(a + b)^2\\ =(a+b)a+(a+b)b\\ =a^2+ab+ab+b^2\\ =a^2+2ab+b^2 $$$$(a+b)^3\\ =(a+b)\cdot(a+b)\cdot(a+b)\\ =(a^2+2ab+b^2)\cdot(a+b)\\ =(a^2\cdot a+2ab\cdot a+b^2\cdot a)+(a^2\cdot b+2ab\cdot b+b^2\cdot b)\\ =a^3+3a^2b+3ab^2+b^3 $$$$(a+b)^4\\ =(a^3+3a^2b+3ab^2+b^3)(a+b)\\ =a^4+4a^3b+6a^2b^2+4ab^3+b^4 $$
5 的话同上,结果样例都有了,不解释了。
观察一下系数,珂以发现这是杨辉三角
然后就好了
如果想不到珂以去 oeis注意数据很坑,需要开
unsigned long long
#include "bits/stdc++.h" using namespace std; unsigned long long f[1919][810]; int main() { int n; scanf ("%d", &n); f[1][1] = 1ll; f[1][2] = 1ll; for (int i = 2; i <= n; ++i) { for (int j = 1; j <= n; ++j) { f[i][j] = f[i - 1][j - 1] + f[i - 1][j]; } } if (n == 1) {printf ("(a+b)^1=a+b"); return 0;} printf ("(a+b)^%d=a^%d", n, n); for (int i = 1; i < n; ++i) { if (n - i == 1) printf ("+%llua", f[n][i + 1]); else printf ("+%llua^%d", f[n][i + 1], n - i); if (i == 1) printf ("b"); else printf ("b^%d", i); } printf ("+b^%d", n); }
- 1
信息
- ID
- 278
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- (无)
- 递交数
- 183
- 已通过
- 49
- 上传者