比赛 板子大赛 评测结果 AAAAATTTTT
题目名称 二项式展开 最终得分 50
用户昵称 __b_ 运行时间 10.012 s
代码语言 C++ 内存使用 3.17 MiB
提交时间 2025-01-22 09:53:51
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
#define int long long
int n;
int f(int a,int x){
    if(x==0)return a;
    int res=1;
    for(int i=2;i<=a;i++){
        res+=f(i,x-1);
    }
    return res;
}
signed main(){
  freopen("binomial.in","r",stdin);
  freopen("binomial.out","w",stdout);
    cin>>n;
    if(n==0){
        cout<<1;
        return 0;
    }if(n==1){
        cout<<"a+b";
        return 0;
    }if(n==2){
        cout<<"a^2+2ab+b^2";
        return 0;
    }
    cout<<"a^"<<n<<"+";
    for(int i=n-1,j=1;i>=1;i--,j++){
        if(j==1)cout<<f(i+1,j-1)<<"a^"<<i<<"b"<<"+";
        else if(i>=j)cout<<f(i+1,j-1)<<"a^"<<i<<"b^"<<j<<"+";
        if(i==1)cout<<f(j+1,i-1)<<"a"<<"b^"<<j<<"+";
        else if(i<j)cout<<f(j+1,i-1)<<"a^"<<i<<"b^"<<j<<"+";
    }
    cout<<"b^"<<n;
    return 0;
}
//a5+5a4b+10a3b2+10a2b3+5ab4+b5
//a6+6a5b+15a4b2+20a3b3+15a2b4+6ab5+b6
/*
a  b
a  b
a  b
a  b
a  b
a  b

*/