题目:
题解:
注意:虽然n,A,B,C,D都不大于int,但是因为下面有关于他们的、大于int的加减,所以必须设为longlong
代码:
#include <cstdio>
#define LL long long
using namespace std;
LL n,A,B,C,D;
int main()
{
int T,i;
scanf("%d",&T);
while (T--)
{
scanf("%lld%lld%lld%lld%lld",&n,&A,&B,&C,&D); n--;
LL up=A+n*D,down=A+n*C;
bool ok=false;
for (i=1;i<=n+1;i++)//只有+1最后一步的答案才得到统计。
{
if (B<=up && B>=down){printf("YES\n");ok=true;break;}
up-=(D+C); down-=(D+C);
}
if (!ok) printf("NO\n");
}
}