为什么RE了第10个测试点

P1064 [NOIP2006 提高组] 金明的预算方案

Mudrobøt @ 2018-02-04 09:08:34

此代码本机运行第十个点是对的,在洛谷IDE上运行第十个点也是RE的打不出答案,但是本机可以打出来! 下面是代码:

#include<cstdio>
#include<cstring>
#include<vector>
#include<iostream>
using namespace std;
struct sd{
    int  weight,value;
    bool prime;
}thing;
int  M[32005];
int num=0;
bool judger[32005];
vector<sd> subject[80];
vector<sd> group[80];
int m,n;
void init();
int main()
{
    init();
    int limit=0;
    for(int i=1;i<=num;++i)
    {
        for(int k=limit;k>=0;--k)
        {
            for(int j=group[i].size()-1;j>=0;--j)
            {
                if((k==0||M[k]!=0)&&k+group[i][j].weight<=m)
                {
                    if(!judger[k]&&M[k+group[i][j].weight]<M[k]+group[i][j].value)
                    {
                        M[k+group[i][j].weight]=M[k]+group[i][j].value;
                        judger[k+group[i][j].weight]=true;
                    }
                }
                if(k+group[i][j].weight>limit)
                limit=k+group[i][j].weight;
            }
        }
        memset(judger,false,sizeof(judger));
    }
    long long  ans=0;
    for(int i=0;i<=m;++i)
    if(ans<M[i])
    ans=M[i];
    cout<<ans;
    return 0;
}
void init()
{
    int  a,b;
    int c;
    scanf("%d%d",&m,&n);
    for(int i=1;i<=n;++i)
    {
        scanf("%d%d%d",&a,&b,&c);
        thing.value=a*b;
        thing.weight=a;
        if(c==0)
        {
            thing.prime=true;
            subject[i].push_back(thing);
        }
        else
        {
            thing.prime=false;
            subject[c].push_back(thing);
        }
    }
    for(int i=1;i<=n;++i)
    {
        if(subject[i].size()==0)
        continue;
        else
        {
            num++;
            if(subject[i].size()==1)
            {
                group[num].push_back(subject[i][0]);
            }
            else if(subject[i].size()==2)
            {
                int king;
                if(subject[i][0].prime) king=0; else king=1;
                group[num].push_back(subject[i][king]);
                sd change;
                change.weight=subject[i][king].weight+subject[i][1-king].weight;
                change.value=subject[i][king].value+subject[i][1-king].value;
                group[num].push_back(change);
            }
            else if(subject[i].size()==3)
            {
                int king;
                if(subject[i][0].prime) king=0; else if(subject[i][1].prime) king=1; else king=2;
                group[num].push_back(subject[i][king]);
                sd swp;
                swp=subject[i][king];
                subject[i][king]=subject[i][0];
                subject[i][0]=swp;
                sd change;
                change.weight=subject[i][0].weight+subject[i][1].weight;
                change.value=subject[i][0].value+subject[i][1].value;
                group[num].push_back(change);
                change.weight=subject[i][0].weight+subject[i][2].weight;
                change.value=subject[i][0].value+subject[i][2].value;
                group[num].push_back(change);
                change.weight=subject[i][0].weight+subject[i][1].weight+subject[i][2].weight;
                change.value=subject[i][0].value+subject[i][1].value+subject[i][2].value;
                group[num].push_back(change);
            }
        }
    }
}

by Mudrobøt @ 2018-02-04 09:09:11

恳请大佬帮助一下!谢谢!!!


by fbhou @ 2018-02-04 09:11:45

哈麻皮


by fbhou @ 2018-02-04 09:11:59

菜锤皮


by fbhou @ 2018-02-04 09:12:16

李时珍的皮


by fbhou @ 2018-02-04 09:12:52

滚滚滚爬爬爬


by Mudrobøt @ 2018-02-04 09:44:37

@fbhou 同学请注意一下你的言行!!!

I类违反(轻微规则违反):

犇犇或讨论发送无意义内容的

用私信骚扰辱骂他人而被举报,或私信骚扰管理员的

提交不符合要求的题解或题目的(包括剽窃他人成果而不注明出处的)

提交无意义评测代码或在评测时抄袭他人代码的

恶意进行评分的

在洛谷站内发送未经许可的洛谷站外广告的

在洛谷站内宣传不符合规定的比赛、团队的

其他的轻度不合理行为 II类违反(严重规则违反):

3次或以上造成I类违反的

在洛谷内发表违反法律、社会公德以及严重的人身攻击的言论

在社区内做出令人觉得严重困扰的行为(包括但不限于发表令人不快的言论)

创建不符合要求的公开比赛的

在比赛中为了骗取奖品、获得排名而作弊的

用户名或头像不和谐或冒充管理员的

在其他任何地方给洛谷造成不好的影响的

故意卡评测机或者利用洛谷系统漏洞而不上报、造成严重后果的(测试并上报没问题)

其他的恶意行为


by Mudrobøt @ 2018-02-04 09:46:35

金明的预算方案!对不起忘说了。


by fbhou @ 2018-02-04 10:17:33

@Mudrobot 我就不注意你能把我怎么样/滑稽


by eternal风度 @ 2018-02-07 07:26:33

@fbhou 给人以起码的尊重,注意你的素质,不要总想着在网上当键盘侠逞一时之快...


by fbhou @ 2018-02-07 08:39:27

@eternal风度 您知道他是谁吗


| 下一页