Submission #1219467

#TimeUsernameProblemLanguageResultExecution timeMemory
121946712345678Portal (BOI24_portal)C++20
11 / 100
11 ms1860 KiB
#include <bits/stdc++.h>

using namespace std;

#define ll long long

const int nx=1e5+5;

ll n, x[nx], y[nx];

struct myvector
{
    ll x, y;
    myvector(ll x, ll y): x(x), y(y){}
};

ll cross(myvector a, myvector b)
{
    return a.x*b.y-a.y*b.x;
}

ll mydiv(ll a, ll b)
{
    if (b==0) return 1;
    else return a/b;
}
int main()
{
    cin.tie(NULL)->sync_with_stdio(false);
    cin>>n;
    for (int i=1; i<=n; i++) cin>>x[i]>>y[i];
    if (n<=2) return cout<<-1, 0;
    myvector v1=myvector(x[2]-x[1], y[2]-y[1]), v2=myvector(x[3]-x[1], y[3]-y[1]);
    if (cross(v1, v2)==0) return cout<<-1, 0;
    cout<<abs(cross(v1, v2));
}

/*
3
1 2
4 1
0 0

*/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...