1672 莱布尼茨三角形

#include<bits/stdc++.h>
using namespace std;
ll a[31][31]; //a[i][j]代表i行j列的分母
int n,m;
int main(){
cin>>n>>m;
//第一列分母是 1/i
for(int i=1;i<=n;i++){
a[i][1]=i;
}
//莱布尼茨三角形的规律:当前位置=左下方+右下方 分数之和
//利用第一列的位置作为初始化条件递推,只记录分母
for(int i=2;i<=n;i++){
for(int j=2;j<=i;j++){
a[i][j] = a[i-1][j-1]*a[i][j-1]/(a[i][j-1]-a[i-1][j-1]);
}
}
//拼接格式输出
cout<<"1/"<<a[n][m];
return 0;
}

浙公网安备 33010602011771号