请小伙伴们对自己AC的题目进行标记,注意每人只能标记一次!不知道的不要标记,恶意标记者将回收账号!!!
问题 D: 莱布尼茨三角形
时间限制: 1 Sec 内存限制: 128 MB
[提交] [状态]
题目描述
世界上著名的莱布尼茨三角形如图所示,请编程输出图中排在第n行从左边数第m个位置上的数。
输入
共一行,有二个整数N 和M(N<=15),两数间用空格隔开。
输出
共一行,有二个整数,两数间用“/”隔开,表示所求的分数,行尾没有多余的空格。
样例输入
Copy
7 3
样例输出 Copy
1/105
#include<algorithm> #include<map> #include<bits/stdc++.h> using namespace std; typedef long long ll; inline int read() { int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();} while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();} return x*f; } const int mod=20011021; const int maxn=1e3+10; int n,m; int a[maxn][maxn]; void inint(){ cin>>n>>m; for(int i=1;i<=16;i++){ for(int j=1;j<=i;j++){ if(j==1){ a[i][j]=i; } else{ a[i][j]=a[i-1][j-1]*a[i][j-1]/(a[i][j-1]-a[i-1][j-1]); } } } } int main(){ inint(); printf("1/"); printf("%d",a[n][m]); }
最新评论