#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define X first #define Y second #define pb push_back #define rep(X,Y) for (int (X) = 0;(X) < (Y);++(X)) #define rrep(X,Y) for (int (X) = (Y-1);(X) >=0;--(X)) #define repe(X,Y) for ((X) = 0;(X) < (Y);++(X)) #define peat(X,Y) for (;(X) < (Y);++(X)) #define all(X) (X).begin(),(X).end() #define rall(X) (X).rbegin(),(X).rend() using namespace std; typedef long long ll; typedef pair pii; typedef pair pll; template using vv=vector>; template ostream& operator<<(ostream &os, const vector &t) { os<<"{"; rep(i,t.size()) {os< ostream& operator<<(ostream &os, const pair &t) { return os<<"("< P; typedef pair L; //sX+tY const double EPS=1e-5; double dot(P a,P b){return (conj(a)*b).real();} double cros(P a,P b){return (conj(a)*b).imag();} int ccw(P a,P b,P c){ b-=a; c-=a; //cout< EPS) return +1;//ccw if(cros(b,c) < -EPS) return -1;//cw if(dot(b,c) < -EPS) return +2; //c-a-b if(dot(b,c) > EPS) return -2; //a-b-c or a-c-b return 0; } int main(){ ios_base::sync_with_stdio(false); cout< v(5); rep(i,5){ cin>>x>>y; v[i]=P(x,y); } vector w(5); iota(all(w),0); do{ f=1; rep(i,5)rep(j,2){ int a=ccw(v[w[(i+2+j)%5]],v[w[(i+3+j)%5]],v[w[i]]), b=ccw(v[w[(i+2+j)%5]],v[w[(i+3+j)%5]],v[w[(i+1)%5]]); // if(w==vector{0,3,2,1,4},0)cout<