问题标题: 酷町堂:数据忒大怎么办

1
0
已解决
李泽远
李泽远
高级天翼
高级天翼

1710杨辉三角

用二项式 做33分 WA代码:

#include<iostream>
using namespace std;
int m;
long long jc(int x){
    long long y=1;
    for(int i=1;i<=x;i++)
        y*=i;
    return y;
}
inline long long C(int m,int n){
    return jc(m)/(jc((m-n))*jc(n));
} 
int main(){
	cin>>m;
	cout<<1<<endl;
	for(int n=1;n<m;n++){
		int i=n,j=0,k=0;
	    while(k<=n){
			i--;j++;
			cout<<C(n,k)<<" ";
			k++;
	    }
		cout<<endl;
	}
    return 0;
}

n=50,对于C(m,n)来说数据忒大了吧!

李泽远在2020-05-10 21:21:35追加了内容

谁给我递推方法

李泽远在2020-05-13 20:08:50追加了内容

你们认真一点。

李泽远在2020-05-14 20:25:13追加了内容

李泽远在2020-05-16 10:16:59追加了内容

李泽远在2020-05-30 18:50:47追加了内容

太无聊了,谁陪我聊聊


0
已采纳
黄依成
黄依成
中级天翼
中级天翼
//83分代码 
#include<iostream>
using namespace std;
long long a[55][55];
int main(){
    int n,j,i;
    cin>>n;
    for(i=0;i<=n;i++){
        a[i][1]=1;
        a[2][2]=1;
    } 
    for(i=1;i<=n;i++){
        for(j=1;j<=i;j++){    
            a[i][j]=a[i-1][j-1]+a[i-1][j];
            cout<<a[i][j]<<" ";
        }
        cout<<endl;
    } 
    return 0;
} 

 

黄依成在2020-05-10 10:30:58追加了内容

自己改

0
0
0
0
邓涵睿
邓涵睿
中级天翼
中级天翼

这题拿数组写他不香吗

0
被禁言 姜思远
姜思远
初级光能
初级光能
50分参考
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <ctime>
#include <map>
#include <algorithm>
#include <cstring>
#include <cstdlib>
#include <bits/stdc++.h>
using namespace std;
int a[1001][1001];
int main()
{   
    int x,y,n,i,j;
    cin>>n;
    for(i=0;i<n;i++)
    {
        a[i][0]=a[i][i]=1;
    }
    for(i=2;i<n;i++)
    {
        for(j=1;j<i;j++)
        {
            a[i][j]=a[i-1][j-1]+a[i-1][j];
        }
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<=i;j++)
            cout<<a[i][j]<<" ";
        cout<<endl;
    }
    return 0;
}

0
徐子宸
徐子宸
中级天翼
中级天翼

只要你不嫌手酸,您就可以打表

0
0
0
0
赵逸凡
赵逸凡
初级启示者
初级启示者

看题目标签,还有,inline内联函数不要用

赵逸凡在2020-05-10 10:37:24追加了内容

@李泽远 会TLE,超时,而且组合法并不效用于杨辉三角中,递推思想需要分析纵横的规律,然后通过仅有的东西推出每个i,j状态的东西,其实就是动态规划,只不过比较简单

我要回答