QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#459955#8831. Chemistry ClassKevin5307WA 64ms6296kbC++231.4kb2024-06-30 17:41:252024-06-30 17:41:26

Judging History

你现在查看的是最新测评结果

  • [2024-06-30 17:41:26]
  • 评测
  • 测评结果:WA
  • 用时:64ms
  • 内存:6296kb
  • [2024-06-30 17:41:25]
  • 提交

answer

//Author: Kevin
#include<bits/stdc++.h>
//#pragma GCC optimize("O2")
using namespace std;
#define ll long long
#define ull unsigned ll
#define pb emplace_back
#define mp make_pair
#define ALL(x) (x).begin(),(x).end()
#define rALL(x) (x).rbegin(),(x).rend()
#define srt(x) sort(ALL(x))
#define rev(x) reverse(ALL(x))
#define rsrt(x) sort(rALL(x))
#define sz(x) (int)(x.size())
#define inf 0x3f3f3f3f
#define pii pair<int,int>
#define lb(v,x) (int)(lower_bound(ALL(v),x)-v.begin())
#define ub(v,x) (int)(upper_bound(ALL(v),x)-v.begin())
#define uni(v) v.resize(unique(ALL(v))-v.begin())
#define longer __int128_t
void die(string S){puts(S.c_str());exit(0);}
int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	int t;
	cin>>t;
	while(t--)
	{
		int n;
		ll a,b;
		cin>>n>>a>>b;
		vector<ll> vec(n+n);
		for(auto &x:vec) cin>>x;
		srt(vec);
		bool ok=1;
		for(int i=0;i<n+n;i+=2)
			if(vec[i+1]-vec[i]>a)
				ok=0;
		if(!ok)
		{
			cout<<"-1\n";
			continue;
		}
		int ans=0;
		ll lst=-1;
		for(int i=0;i<n+n;i+=2)
		{
			if(vec[i+1]-vec[i]<=b&&lst==-1)
			{
				if(~lst) ans++;
				lst=-1;
			}
			else
			{
				if(lst+vec[i+1]-vec[i]>a)
				{
					ans++;
					lst=-1;
				}
				lst+=vec[i+1]-vec[i];
			}
			if(~lst&&i<n+n-2&&vec[i+2]-vec[i+1]>b)
			{
				ans++;
				lst=-1;
			}
		}
		if(~lst) ans++;
		cout<<n-ans<<'\n';
	}
	return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3552kb

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: 64ms
memory: 6296kb

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: 63ms
memory: 6276kb

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: 63ms
memory: 6224kb

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: -100
Wrong Answer
time: 55ms
memory: 6256kb

input:

1
199998 35667463938291 8255384928693
770468016026697053 519790816750772730 110085058423772871 85144239858008037 782003096084947976 938498644167289660 693768718229582367 242186248813489674 155335549252315364 428982852761422230 890445026369869037 86401573937739054 9122788624365829 63351367715811463 1...

output:

189729

result:

wrong answer 1st numbers differ - expected: '193326', found: '189729'