Cod sursa(job #2561463)

Utilizator SergiuS3003Sergiu Stancu Nicolae SergiuS3003 Data 28 februarie 2020 20:13:27
Problema Pachete Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1 kb
#include <iostream>
#include <algorithm>
#include <fstream>
using namespace std;
ifstream f ( "pachete.in" );
ofstream g ( "pachete.out" );
double v1[50003], v2[50003];
struct punct
{
    int x, y;
};
int main()
{
    int n, lv1 = 0, lv2 = 0;
    punct in, pct;
    f >> n;
    f >> in.x >> in.y;

    for ( int i = 1; i <= n; i++ )
    {
        f >> pct.x >> pct.y;

        if ( pct.x > in.x )
            v1[++lv1] = ( pct.x - in.x ) * 1.0 / ( pct.y - in.y );
        else v2[++lv2] = ( pct.x - in.x ) * 1.0 / ( pct.y - in.y );
    }

    int nrl = 0;

    if ( lv1 >= 1 )
    {
        sort ( v1 + 1, v1 + lv1 + 1 );
        nrl++;

        for ( int i = 2; i <= lv1; i++ )
            if ( v1[i] != v1[i - 1] )
                nrl++;
    }

    if ( lv2 >= 1 )
    {
        sort ( v2 + 1, v2 + lv2 + 1 );
        nrl++;

        for ( int i = 2; i <= lv2; i++ )
            if ( v2[i] != v2[i - 1] )
                nrl++;
    }

    g << nrl;
    return 0;
}