搜索
查看: 415|回复: 3
打印 上一主题 下一主题

合并果子那题为什么总是Segmentation fault啊!求大佬们帮我看一下

[复制链接]
跳转到指定楼层
楼主
 楼主| 发表于 2018-8-31 23:16:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <iostream>

using namespace std;
long seeds[9999],n,sum=0;
void pop(int a,int b)
{
    for(int k=a; k<b; k++)
    {
        for(int k2=a; k2<b-k+a; k2++)
        {
            if(seeds[k2]>seeds[k2+1])
            {
                int temp=seeds[k2];
                seeds[k2]=seeds[k2+1];
                seeds[k2+1]=temp;
            }
        }
    }
}
int main()
{
    cin>>n;
    for(int i=1; i<=n; i++)
        cin>>seeds[i];
        pop(1,n);
    int merges=n+1,head=1,j,j2;
    while(n>1)
    {
        int m=n/2;
        for( j=merges,j2=head; j<merges+m; j++,j2+=2)
        {
            seeds[j]=seeds[j2]+seeds[j2+1];
            sum+=seeds[j];
        }
        if(n%2==0)
        {
            head=n+1;
            merges=j;
            n=m;
        }
        else if(n%2!=0)
        {
            pop(merges-1,merges-1+m);
            head=merges-1;
            merges=j;
            n=m+1;
        }
    }
    cout<<sum;
    return 0;
}

沙发
发表于 2018-10-17 01:44:22 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
板凳
发表于 2018-10-29 20:49:05 | 只看该作者
aaaaaaaaaaaaaaa
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表