fork(13) download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. double xa, ya, xb, yb, xc, yc, xd, yd;
  5. scanf ("%lf%lf", &xa, &ya); // читаем координаты точки A
  6. scanf ("%lf%lf", &xb, &yb); // читаем координаты точки D
  7. scanf ("%lf%lf", &xc, &yc); // читаем координаты точки C
  8. scanf ("%lf%lf", &xd, &yd); // читаем координаты точки D
  9. printf (
  10. (((xd - xa)*(yb-ya)-(yd-ya)*(xb-xa))*((xc - xa)*(yb-ya)-(yc-ya)*(xb-xa)) >= 0) &&
  11. (((xd - xb)*(yc-yb)-(yd-yb)*(xc-xb))*((xa - xb)*(yc-yb)-(ya-yb)*(xc-xb)) >= 0) &&
  12. (((xd - xc)*(ya-yc)-(yd-yc)*(xa-xc))*((xb - xc)*(ya-yc)-(yb-yc)*(xa-xc)) >= 0 )?
  13. "yes": "no");
  14. return 0;
  15. }
Success #stdin #stdout 0s 3344KB
stdin
0	0	2	0	0	2	5	5
0	0	2	0	0	2	1	1
-1	-1	1	-1	0	1	0	0
-1	-1	1	-1	0	1	1	3
-1	-1	1	-1	0	1	0.5	0
-1	-1	1	-1	0	1	0	1
-2	-2	1	-1	0	1	0	0
-1	-1	1	-1	0	1	2	2
stdout
no