Language: C++

&#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>

using namespace std;

const double EPS = 1e-8;
const double INF = 1e12;
typedef complex<double> P;

namespace std {
    bool operator < (const P& a, const P& b) {
        return real(a) != real(b) ? real(a) < real(b) : imag(a) < imag(b);
    }
}
double cross(const P& a, const P& b) {
    return imag(conj(a)*b);
}
double dot(const P& a, const P& b) {
    return real(conj(a)*b);
}

int ccw(P a, P b, P c) {
    b -= a; c -= a;
    if (cross(b, c) > 0)   return +1;       // counter clockwise
    if (cross(b, c) < 0)   return -1;       // clockwise
    if (dot(b, c) < 0)     return +2;       // c--a--b on line
    if (norm(b) < norm(c)) return -2;       // a--b--c on line
    return 0;
}

vector<P> convex_hull(vector<P> ps) {
    int n = ps.size(), k = 0;
    sort(ps.begin(), ps.end());
    vector<P> ch(2*n);
    for (int i = 0; i < n; ch[k++] = ps[i++]) // lower-hull
        while (k >= 2 && ccw(ch[k-2], ch[k-1], ps[i]) <= 0) --k;
    for (int i = n-2, t = k+1; i >= 0; ch[k++] = ps[i--]) // upper-hull
        while (k >= t && ccw(ch[k-2], ch[k-1], ps[i]) <= 0) --k;
    ch.resize(k-1);
    return ch;
}

int main(){
    vector<P> v(4);
    while(scanf("%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf", &v[0].real(), &v[0].imag(), &v[1].real(), &v[1].imag(), &v[2].real(), &v[2].imag(), &v[3].real(), &v[3].imag()) != EOF){
        vector<P> q =  convex_hull(v);
        cout << (q.size()==4?"YES":"NO") << endl;
    }
}

Compiler output:
a.cc:1:2: error: stray '#' in program
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |  ^
a.cc:1:10: error: stray '#' in program
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |          ^
a.cc:1:18: error: stray '#' in program
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |                  ^
a.cc:1:26: error: stray '#' in program
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |                          ^
a.cc:1:33: error: stray '#' in program
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |                                 ^
a.cc:1:3: error: expected unqualified-id before numeric constant
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |   ^~~~~
a.cc:1:11: error: expected unqualified-id before numeric constant
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |           ^~~~~
a.cc:1:19: error: expected unqualified-id before numeric constant
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |                   ^~~~~
a.cc:1:27: error: expected unqualified-id before numeric constant
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |                           ^~~~~
a.cc:1:34: error: 'include' does not name a type
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
      |                                  ^~~~~~~
a.cc:7:9: error: 'complex' does not name a type
    7 | typedef complex<double> P;
      |         ^~~~~~~
a.cc:10:28: error: 'P' does not name a type
   10 |     bool operator < (const P& a, const P& b) {
      |                            ^
a.cc:10:40: error: 'P' does not name a type
   10 |     bool operator < (const P& a, const P& b) {
      |                                        ^
a.cc:10:10: error: 'bool std::operator<(const int&, const int&)' must have an argument of class or enumerated type
   10 |     bool operator < (const P& a, const P& b) {
      |          ^~~~~~~~
a.cc:14:20: error: 'P' does not name a type
   14 | double cross(const P& a, const P& b) {
      |                    ^
a.cc:14:32: error: 'P' does not name a type
   14 | double cross(const P& a, const P& b) {
      |                                ^
a.cc: In function 'double cross(const int&, const int&)':
a.cc:15:17: error: 'conj' was not declared in this scope
   15 |     return imag(conj(a)*b);
      |                 ^~~~
a.cc:15:12: error: 'imag' was not declared in this scope
   15 |     return imag(conj(a)*b);
      |            ^~~~
a.cc: At global scope:
a.cc:17:18: error: 'P' does not name a type
   17 | double dot(const P& a, const P& b) {
      |                  ^
a.cc:17:30: error: 'P' does not name a type
   17 | double dot(const P& a, const P& b) {
      |                              ^
a.cc: In function 'double dot(const int&, const int&)':
a.cc:18:17: error: 'conj' was not declared in this scope
   18 |     return real(conj(a)*b);
      |                 ^~~~
a.cc:18:12: error: 'real' was not declared in this scope
   18 |     return real(conj(a)*b);
      |            ^~~~
a.cc: At global scope:
a.cc:21:9: error: 'P' was not declared in this scope
   21 | int ccw(P a, P b, P c) {
      |         ^
a.cc:21:14: error: 'P' was not declared in this scope
   21 | int ccw(P a, P b, P c) {
      |              ^
a.cc:21:19: error: 'P' was not declared in this scope
   21 | int ccw(P a, P b, P c) {
      |                   ^
a.cc:21:22: error: expression list treated as compound expression in initializer [-fpermissive]
   21 | int ccw(P a, P b, P c) {
      |                      ^
a.cc:30:1: error: 'vector' does not name a type
   30 | vector<P> convex_hull(vector<P> ps) {
      | ^~~~~~
a.cc: In function 'int main()':
a.cc:43:5: error: 'vector' was not declared in this scope
   43 |     vector<P> v(4);
      |     ^~~~~~
a.cc:43:12: error: 'P' was not declared in this scope
   43 |     vector<P> v(4);
      |            ^
a.cc:43:15: error: 'v' was not declared in this scope
   43 |     vector<P> v(4);
      |               ^
a.cc:44:11: error: 'scanf' was not declared in this scope
   44 |     while(scanf("%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf", &v[0].real(), &v[0].imag(), &v[1].real(), &v[1].imag(), &v[2].real(), &v[2].imag(), &v[3].real(), &v[3].imag()) != EOF){
      |           ^~~~~
a.cc:44:167: error: 'EOF' was not declared in this scope
   44 |     while(scanf("%lf,%lf,%lf,%lf,%lf,%lf,%lf,%lf", &v[0].real(), &v[0].imag(), &v[1].real(), &v[1].imag(), &v[2].real(), &v[2].imag(), &v[3].real(), &v[3].imag()) != EOF){
      |                                                                                                                                                                       ^~~
a.cc:1:1: note: 'EOF' is defined in header '<cstdio>'; this is probably fixable by adding '#include <cstdio>'
  +++ |+#include <cstdio>
    1 | &#65279;&#65279;&#65279;&#65279;#include<bits/stdc++.h>
a.cc:45:19: error: 'q' was not declared in this scope
   45 |         vector<P> q =  convex_hull(v);
      |                   ^
a.cc:45:24: error: 'convex_hull' was not declared in this scope
   45 |         vector<P> q =  convex_hull(v);
      |                        ^~~~~~~~~~~
a.cc:46:9: error: 'cout' was not declared in this scope
   46 |         cout << (q.size()==4?"YES":"NO") << endl;
      |         ^~~~
a.cc:46:45: error: 'endl' was not declared in this scope
   46 |         cout << (q.size()==4?"YES":"NO") << endl;
      |                                             ^~~~