JQ747502 2022-10-18 16:44 采纳率: 0%
浏览 13

为什么没有数组越界还会有RE


#include<cstdio>
char a[2000];
#include<cmath>
int tree(int begin,int end)
{
    char s=0;
    char i, j;
    if (begin == end) { printf("%c", a[begin] == '1' ? 'I' : 'B'); return  a[begin]-'0'; }
    i=tree(begin, (begin + end)/ 2);
    j=tree((begin + end) / 2 + 1, end);
    if (j != i)
    {
        printf("F");
        return 2;
    }
    else
    {
        switch (i)
        {
        case 0:printf("B"); return 0;
        case 1:printf("I"); return 1;
        case 2:printf("F"); return 2;
       }
    }
}
int main()
{
    int n=0,i=0;
    scanf("%d", &n);
    int k=1;
    for (int j = 0; j < n; j++)
    {
        k *= 2;
    }
    scanf("%s", a);
    tree(0, k-1);
    return 1;
}

题目中说输入最大为2^N,N<=10,我这里字符串数组a开了2000可还是会RE,这是因为什么啊 !

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-10-18 16:55
    关注

    题目怎么说的,n是什么值?

    评论

报告相同问题?

问题事件

  • 创建了问题 10月18日

悬赏问题

  • ¥15 EDA技术关于时序电路设计
  • ¥15 百度文心一言流式返回sse失败
  • ¥15 由于远程方已关闭传输流,身份验证失败
  • ¥15 rt-detr,PCB,目标检测
  • ¥15 有偿求指导实证代码。cfps清洗合并后,无论是构建平衡面板还是非平衡面板,都是只剩几百个样本量。求指导一下哪里出问题了,不要潦草回复
  • ¥15 mutlinichenet
  • ¥50 Qt5.14.2怎样使用qlistwidget存储指针类数据并更新?
  • ¥15 STM32多路复用器ADC采样
  • ¥20 Linux(ubuntu)操作相关问题
  • ¥15 python深度学习代码求跑