Codeforces Round #637 (Div. 2) - Thanks, Ivan Belonogov! 比赛人数15390
[codeforces 1341A] Nastya and Rice 区间交叠
总目录详见https://blog.csdn.net/mrcrack/article/details/103564004
在线测评地址https://codeforces.com/contest/1341/problem/A
Problem | Lang | Verdict | Time | Memory |
---|---|---|---|---|
A - Nastya and Rice | GNU C++17 | Accepted | 30 ms | 0 KB |
思路如下:
输出No的形态只有两种
1.区间[(a-b)*n,(a+b)*n]完全在区间[c-d,d+d]的左侧,并且没有交叠,即(a+b)*n<c-d
2.区间[(a-b)*n,(a+b)*n]完全在区间[c-d,d+d]的右侧,并且没有交叠,即c+d<(a-b)*n
AC代码如下
#include <stdio.h>
int main(){
int t,a,b,c,d,n,mn,mx;
scanf("%d",&t);
while(t--){
scanf("%d%d%d%d%d",&n,&a,&b,&c,&d);
mn=(a-b)*n,mx=(a+b)*n;
if(mx<c-d)printf("No\n");
else if(c+d<mn)printf("No\n");
else printf("Yes\n");
}
return 0;
}