牛客多校第四场 F. Finding the Order

牛客多校第四场 F. Finding the Order_第1张图片

思路:
我是将C,D按照是在AB中垂线左边还是右边进行分类。
数据有点假,貌似很多ac代码都可以被hack。。。

#include 
#include 
#include 
#include 
#include 
#include 
 
using namespace std;
 
const int maxn = 1e3 + 7;
 
int main() {
    int T;scanf("%d",&T);
    while(T--) {
        int ac,ad,bc,bd;scanf("%d%d%d%d",&ac,&ad,&bc,&bd);
        int flag = 0;//代表CD
        if(ac > bc) { //c在AB中垂线以右
            if(ad > bd) { //d在中垂线以右
                if(ac > ad) { //DC
                    flag = 1;
                } else { // CD
                    flag = 0;
                }
            } else { //d在中垂线以左, DC
                flag = 1;
            }
        } else { //c在AB中垂线以左
            if(ad > bd) { //d在中垂线以右,CD
                flag = 0;
            } else { //d在中垂线以左
                if(bc > bd) { //CD
                    flag = 0;
                } else { //DC
                    flag = 1;
                }
            }
        }
        if(flag == 0) {
            printf("AB//CD\n");
        } else {
            printf("AB//DC\n");
        }
    }
    return 0;
}

你可能感兴趣的:(#,其他比赛题目)