为什么我纯粹模拟都能AC。。看题解好像我这种想法不太对。

P3740 [HAOI2014] 贴海报

GPS23432443 @ 2018-10-31 13:26:21

include<iostream>

include<cstring>

using namespace std; int a[10000000+10]; bool b[2000]; int main() { int n,m,l,r,sum=0; cin>>n>>m; memset(a,0,sizeof(a)); for(int i=1;i<=m;++i) { cin>>l>>r; for(int j=l;j<=r;++j) a[j]=i; } for(int i=1;i<=m;++i) b[i]=false; for(int i=1;i<=n;++i) if(a[i]!=0) b[a[i]]=true; for(int i=1;i<=m;++i) if(b[i]) sum++; cout<<sum; return 0; }


by GPS23432443 @ 2018-10-31 13:29:13

#include<iostream>
#include<cstring>
using namespace std;
int a[10000000+10];
bool b[2000];
int main()
{
    int n,m,l,r,sum=0;
    cin>>n>>m;
    memset(a,0,sizeof(a));
    for(int i=1;i<=m;++i)
    {
        cin>>l>>r;
        for(int j=l;j<=r;++j)
            a[j]=i;
    }
    for(int i=1;i<=m;++i)
        b[i]=false;
    for(int i=1;i<=n;++i)
        if(a[i]!=0)
            b[a[i]]=true;
    for(int i=1;i<=m;++i)
        if(b[i])
            sum++;
    cout<<sum;
    return 0;
}

呃呃第一次发,没搞懂


by WA鸭鸭 @ 2018-10-31 13:31:16

@GPS23432443 这是线段树。。。数据太水


by codesonic @ 2018-10-31 13:36:35

浮水法啊 怎么线段树了


by WA鸭鸭 @ 2018-10-31 13:39:16

@codesonic orzll!


by GPS23432443 @ 2018-11-01 17:29:10

@codesonic 那个我没搞懂什么叫线段树和浮水法唉QwQ


by GPS23432443 @ 2018-11-01 17:33:25

@codesonic 网上搜不到定义QWQ 树什么的我还没搞懂,百度里的线段树呀什么的代码用了好多结构体那些,我这里没有用呀??OWO


by 违规用户名U175511 @ 2019-01-14 20:13:09

@GPS23432443 我也觉得这提有问题,我70分WA的代码调了半天还是挑不出来,和题解对拍了一个网上还是没有找到错误数据,于是严重怀疑这题有问题,把题解交了上去(当然是小号)题解只有十分

我提交的: https://www.luogu.org/recordnew/show/15400794

题解提交的: https://www.luogu.org/recordnew/show/3129571

@chen_zhe 帮忙看看这题到底有没有Bug


|