QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#612327 | #8831. Chemistry Class | x17875487211 | WA | 66ms | 13324kb | C++14 | 846b | 2024-10-05 10:32:22 | 2024-10-05 10:32:23 |
Judging History
answer
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=4e5+10;
int T,n,A,B,a[maxn],sum[maxn],dp[maxn];
signed main(){
scanf("%lld",&T);
while(T--){
scanf("%lld%lld%lld",&n,&A,&B);
for(int i=1;i<=2*n;i++)
scanf("%lld",&a[i]);
sort(a+1,a+1+2*n);
//for(int i=1;i<=2*n;i++) printf("a[%lld]=%lld\n",i,a[i]);
for(int i=2;i<=2*n;i++)
sum[i]=sum[i-2]+(a[i]-a[i-1]<=B);
memset(dp,-0x3f,sizeof(dp));
int INF=-dp[0];
dp[0]=0;
for(int i=2;i<=2*n;i+=2){
int Sum=0;
for(int j=i-1;j>=1;j-=2){
if(a[i]-a[j]>A) break;
if(j+2<=i) Sum+=(a[j+2]-a[j+1]<=B);
// printf("i=%lld j=%lld Sum=%lld\n",i,j,Sum);
dp[i]=max(dp[i],dp[j-1]+Sum+(a[i]-a[j]<=B));
}
//printf("dp[%lld]=%lld\n",i,dp[i]);
}
printf("%lld\n",(dp[2*n]==-INF)?-1:dp[2*n]);
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 9048kb
input:
4 1 2 1 42 69 2 3 1 1 2 3 4 2 5 1 6 1 3 4 5 19 1 1 7 8 9 10 11 12 13 14 20
output:
-1 2 1 4
result:
ok 4 number(s): "-1 2 1 4"
Test #2:
score: 0
Accepted
time: 66ms
memory: 13256kb
input:
1 199996 67013419502794 1 403716252634677166 895717933735068492 410002430455111886 844431179242134559 322988383133810700 133475121268220299 481706326769800263 606871141911985391 195911124687409946 959578180866483093 930547702157856949 877914383714875160 994158366044742636 890855755285236186 69498488...
output:
0
result:
ok 1 number(s): "0"
Test #3:
score: 0
Accepted
time: 65ms
memory: 13196kb
input:
1 199998 38987266278826 1 974183459404323858 517476981059568123 730207399881008603 532509909948600146 89227878552241675 16653300445469756 791674368913652595 92177901403222015 980536748304824579 581564387828767376 471919726893404451 759601909683722004 632340812998214017 818440789777778368 18845836031...
output:
0
result:
ok 1 number(s): "0"
Test #4:
score: 0
Accepted
time: 61ms
memory: 13104kb
input:
1 199996 54170919220045 1 968843690955781467 596307347951820347 406785475849275444 383666938223357986 725160735782817082 132577412512120631 891899794864087098 779434145671998619 932681297277907326 208765550447928461 385078857912267975 669360937040314510 917331948890514855 505938744714587815 47145437...
output:
0
result:
ok 1 number(s): "0"
Test #5:
score: 0
Accepted
time: 64ms
memory: 13168kb
input:
1 199998 35667463938291 8255384928693 770468016026697053 519790816750772730 110085058423772871 85144239858008037 782003096084947976 938498644167289660 693768718229582367 242186248813489674 155335549252315364 428982852761422230 890445026369869037 86401573937739054 9122788624365829 63351367715811463 1...
output:
193326
result:
ok 1 number(s): "193326"
Test #6:
score: -100
Wrong Answer
time: 60ms
memory: 13324kb
input:
1 199998 30382921668955 14233448082254 963132297376532181 199422464083525159 322744997549904069 484222268324755182 911994852231141516 486452603601138945 442934186247306449 697067018736912231 391585717434570522 682442472054944522 79264788486972294 313368204441969076 399649435615099454 810055146752799...
output:
-4485090715960610295
result:
wrong answer 1st numbers differ - expected: '-1', found: '-4485090715960610295'