题目
题意:给定两种
c
o
k
k
i
e
cokkie
cokkie,分别有
a
a
a和
b
b
b个;给定两种类型的顾客,分别有
m
m
m和
n
n
n个。其中类型1专吃当前剩余
c
o
k
k
i
e
cokkie
cokkie多的吃,类型2顾客专吃当前剩余
c
o
k
k
i
e
cokkie
cokkie少的吃,每个顾客吃一个。给定
a
,
b
,
m
,
n
a,b,m,n
a,b,m,n,问是否存在一种顺序,使得所有顾客可以吃自己想吃的
c
o
k
k
i
e
cokkie
cokkie。
思路:不妨设 b < a b<a b<a,有解必要条件,显然是 b > = m b>=m b>=m,其次,再来看看 n n n,由于类型1的顾客专挑多的吃,那么如果只剩下类型1顾客,他可以吃剩余的cokkie。故第2个条件则是 a + ( b − m ) > = n a+(b-m)>=n a+(b−m)>=n,即 a + b > = n + m a+b>=n+m a+b>=n+m。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int maxn = 100010;
int main() {
int t;
scanf("%d",&t);
while(t--) {
ll a,b,n,m;
scanf("%lld%lld%lld%lld",&a,&b,&n,&m);
if(a < b) swap(a,b);
if(b >= m && a+b >= n+m)
printf("Yes\n");
else
printf("No\n");
}
}