9 条题解

  • 0
    @ 2023-12-24 18:21:23

    #include using namespace std; const int N=1e5+10; int n,p,h,m,a[N],x,y; int main(){ cin>>n>>p>>h>>m; for(int i=1;i<=n;i++)a[i]=h; while(m--){ cin>>x>>y; if(x>y)swap(x,y); if(x+1==y)continue; int k=min(a[x],a[y]); bool flag=false; for(int i=x+1;i<=y-1;i++) if(a[i]>=k){ flag=true; break; } if(flag) for(int i=x+1;i<=y-1;i++)a[i]--; } for(int i=1;i<=n;i++)cout<<a[i]<<"\n"; return 0; }

    信息

    ID
    13
    时间
    1000ms
    内存
    128MiB
    难度
    4
    标签
    递交数
    426
    已通过
    181
    上传者