m0_57872841 2022-03-26 17:51 采纳率: 25%
浏览 61
已结题

蓝桥杯2021年第十二届 杨辉三角形

个人想法是,通过for循环,将杨辉三角叠加遍历出来,个数,通过sum+j(算出遍历的几行的总数字再加上本行的第几列)
问题相关代码,请勿粘贴截图
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{int a[10000][10000];
int i,j;
int N,sum=0;
int b[10000];
scanf("%d",&N);


for(i=0;i<100;i++)
{
    b[i]=i+1;
    
}
a[0][0]=1;
a[1][0]=1;a[1][1]=1;
for(i=2;i<100;i++)
{
    for(j=0;j<i+1;j++)
{
    if(j==0) a[i][j]=1;
    else if(j==i) a[i][j]=1;
    else
    {
        a[i][j]=a[i-1][j-1]+a[i-1][j];
    }
}
}


for(i=0;i<100;i++)
{
    for(j=0;j<i+1;j++)
    {    

        if(a[i][j]==N)
        {
            printf("%d",sum+j+1);
        }
            sum+=b[i];
    }
}


    
    
    
    return 0;
}
运行结果及报错内容

没有输入的画面,直接跳出程序,不知道是哪里出了问题,杨辉三角,单独测试过,是可以正常显示的

  • 写回答

3条回答 默认 最新

  • CSDN专家-link 2022-03-26 18:43
    关注

    杨辉三角这个我会的,我的问题点在于,为什么没有输入的环节,程序就直接结束了

    原因是 int a[10000][10000];数组太大了,程序申请不到这么大空间,直接崩溃掉了。
    一是将数组大小减小,二是将这个数组放到main函数外面,变为全局变量。全局变量支持更大的数组空间申请

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月30日
  • 已采纳回答 3月26日
  • 创建了问题 3月26日

悬赏问题

  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探