문제
링크
풀이
#include <stdio.h>
typedef struct Coord {
long long x;
long long y;
} Coord;
int ccw(Coord a, Coord b, Coord c) {
long long t = a.x*b.y + b.x*c.y + c.x*a.y - a.y*b.x - b.y*c.x - c.y*a.x;
if (t > 0) return 1;
else if (t < 0) return -1;
else return 0;
}
int main(void) {
Coord a, b, c, d;
scanf("%lld %lld %lld %lld", &a.x, &a.y, &b.x, &b.y);
scanf("%lld %lld %lld %lld", &c.x, &c.y, &d.x, &d.y);
if (ccw(a, b, c)*ccw(a, b, d) <= 0 && ccw(c, d, a)*ccw(c, d, b) <= 0) printf("1");
else printf("0");
return 0;
}