From 0de21a3bd313c3f2d53edd34982c5944894f23a1 Mon Sep 17 00:00:00 2001 From: Zengtudor Date: Thu, 27 Nov 2025 11:00:06 +0800 Subject: [PATCH] =?UTF-8?q?fix(P6627):=20=E4=BF=AE=E5=A4=8D=E8=BE=B9?= =?UTF-8?q?=E7=95=8C=E6=9D=A1=E4=BB=B6=E5=A4=84=E7=90=86=E5=B9=B6=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E7=BB=93=E6=9E=9C=E6=AF=94=E8=BE=83=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 扩展映射表的键范围以包含更多边界情况,确保正确性 在结果比较时增加绝对值条件,优化最终答案选择 --- src/11/27/P6627.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/11/27/P6627.cpp b/src/11/27/P6627.cpp index 9c6e02c..c0f0b62 100644 --- a/src/11/27/P6627.cpp +++ b/src/11/27/P6627.cpp @@ -1,6 +1,7 @@ #include #include #include +#include #include #include #include @@ -18,17 +19,18 @@ int main(){ std::cin>>n; l.resize(n+1);r.resize(n+1);w.resize(n+1);a.resize(n+1);b.resize(n+1);t.resize(n+1); + m[0]=0; for(ll i=1;i<=n;i++){ std::cin>>t[i]; if(t[i]==1){ std::cin>>l[i]>>r[i]>>w[i]; - m[l[i]]=m[r[i]]=m[r[i]+1]=0; + m[l[i]-1]=m[l[i]]=m[l[i]+1]=m[r[i]-1]=m[r[i]]=m[r[i]+1]=m[r[i]+2]=0; }else if(t[i]==2){ std::cin>>a[i]>>w[i]; - m[a[i]]=0; + m[a[i]-1]=m[a[i]]=m[a[i]+1]=0; }else{ std::cin>>b[i]>>w[i]; - m[b[i]]=0; + m[b[i]-1]=m[b[i]]=m[b[i]+1]=0; } } ll idx=1; @@ -61,6 +63,10 @@ int main(){ nans^=eq[i]; nans^=xr[i]; nans^=anq^nq[i]; + if(nans==ans && std::abs(rp->first)first; + ans=nans; + } if(nans>ans){ ansi=rp->first; ans=nans;