【A题】Codeforces Round #630 (Div. 2)

在这里插入图片描述
比赛思路:
鬼晓得我又回到刚开始了,和a题死磕 , 钻牛角尖绝活。
不过有一说一这题真真真的题目出的不清楚啊,一个题意不清晰的题,恰巧你又没体会到作者到底什么意思,这就很像是做阅读理解题,你以为的不是你以为的。总而言之就是又心态有点炸了。可能要心态炸到数不清了,才习以为常,一切都会变好了吧。

题意:
先看输入
输入a b c d
之后输入 x y x1 y1 x2 y2
这里a是往左a步,b是往右b步,c是往下c步,d是往上d步;
x+=-a+b, y+=-c+d;这么写就ok了
但是我sb的是不知道写这一步

(x2>x1||a+b==0)&&(y2>y1||c+d==0)

这一步的作用就是如果x1等于x2,那a+b就必须等于0;
即a,b都要为0;因为x1=x2时,一步都不能动
反正就是很简单的题,是我呆了。

附上代码:

#include<bits/stdc++.h>
using namespace std;

int a,b,c,d,x,y,x1,y1,x2,y2,xx,yy;

int main(){
    int t;
    cin>>t;
    while (t--){
        cin>>a>>b>>c>>d;
        cin>>x>>y>>x1>>y1>>x2>>y2;
        xx=x,yy=y;
        x+=-a+b, y+=-c+d;
        if (x>=x1&&x<=x2&&y>=y1&&y<=y2&&(x2>x1||a+b==0)&&(y2>y1||c+d==0)){
            cout<<"Yes\n";
        }
        else{
            cout<<"No\n";
        }
    }
    return 0;
}
发布了62 篇原创文章 · 获赞 0 · 访问量 635

猜你喜欢

转载自blog.csdn.net/weixin_44745441/article/details/105318704