A - Nastya and Rice CodeForces - 1341A

传送门
Nastya just made a huge mistake and dropped a whole package of rice on the floor. Mom will come soon. If she sees this, then Nastya will be punished.
In total, Nastya dropped n grains. Nastya read that each grain weighs some integer number of grams from a−b to a+b, inclusive (numbers a and b are known), and the whole package of n grains weighs from c−d to c+d grams, inclusive (numbers c and d are known). The weight of the package is the sum of the weights of all n grains in it.
Help Nastya understand if this information can be correct. In other words, check whether each grain can have such a mass that the i-th grain weighs some integer number xi (a−b≤xi≤a+b), and in total they weigh from c−d to c+d, inclusive (c−d≤∑i=1nxi≤c+d).
Input
The input consists of multiple test cases. The first line contains a single integer t (1≤t≤1000) — the number of test cases.
The next t lines contain descriptions of the test cases, each line contains 5 integers: n (1≤n≤1000) — the number of grains that Nastya counted and a,b,c,d (0≤b<a≤1000,0≤d<c≤1000) — numbers that determine the possible weight of one grain of rice (from a−b to a+b) and the possible total weight of the package (from c−d to c+d).
Output
For each test case given in the input print “Yes”, if the information about the weights is not inconsistent, and print “No” if n grains with masses from a−b to a+b cannot make a package with a total mass from c−d to c+d.
Example
Input

5
7 20 3 101 18
11 11 10 234 2
8 9 7 250 122
19 41 21 321 10
3 10 8 6 1

Output

Yes
No
Yes
No
Yes

In the first test case of the example, we can assume that each grain weighs 17 grams, and a pack 119 grams, then really Nastya could collect the whole pack.
In the third test case of the example, we can assume that each grain weighs 16 grams, and a pack 128 grams, then really Nastya could collect the whole pack.
In the fifth test case of the example, we can be assumed that 3 grains of rice weigh 2, 2, and 3 grams, and a pack is 7 grams, then really Nastya could collect the whole pack.
In the second and fourth test cases of the example, we can prove that it is impossible to determine the correct weight of all grains of rice and the weight of the pack so that the weight of the pack is equal to the total weight of all collected grains.

题意: T组输入,每组给定n个掉落米粒,以及数据a,b,c,d,表示米粒的单个重量范围为[a-b, a+b],米粒的总重量范围在[c-d, c+d]。如果米粒总数乘以米粒的单个重量能在规范的总重量范围内则输出YES ,否则输出NO
题解: 其实题意已经表达的够清楚了,只要令所有的米粒单个重量最轻,乘得的总重量小于等于规范总重的上限;并且令所有的米粒单个重量最大,乘得的总重量大于等于规范的总重量的下限,即满足要求。

#include<iostream>
#include<algorithm>
using namespace std;

int t, n, a, b, c, d;
int main(){
	scanf("%d", &t);
	while(t--){
		scanf("%d%d%d%d%d", &n, &a, &b, &c, &d);
		if(n*(a-b)<=c+d && n*(a+b)>=c-d)	printf("YES\n");
		else printf("NO\n");
	}
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值