# PBinfo #1609 – paralele – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: Darius

## Enunț

Cerința
Se dau N drepte paralele în sistemul de axe ortogonale xOy, acestea intersectând axa Ox în N puncte de abscise întregi x1, x2, ... , xN. Determinaţi numărul maxim M de perechi de drepte dintre cele date, pentru care distanţa dintre dreptele din orice pereche este aceeaşi. 

Date de intrare
Fișierul de intrare paralele.in conține pe prima linie numărul N de drepte, iar pe a doua linie abscisele punctelor de intersecţie ale celor N drepte cu axa Ox.

Date de ieșire
Fișierul de ieșire paralele.out va conține pe prima linie numărul M.

Restricții și precizări

2 ≤ N ≤ 1.000
-1.000.000 ≤ x1,x2,...,xN ≤ 1.000.000

Exemplu:
paralele.in

3
1 5 9 
paralele.out

2
Explicație
Distanţa dintre prima şi a doua dreapta este egală cu distanţa dintre a doua şi a treia dreaptă, deci sunt două perechi de drepte cu aceeaşi distanţă între ele.

## Cod sursă C++

```cpp
#include <fstream>
using namespace std;
ifstream f("paralele.in");
ofstream g("paralele.out");
long a[1001] , v[2000001] , n , i , j , x , maxim ;
int main()
{
    f >> n ;
    maxim = 0 ;
    for ( i=1 ; i<=n ; i++ )
    {
        f >> a[i] ;
        for ( j=1 ; j<i ; j++ )
        {
            if( a[i]>a[j] ) x = a[i]-a[j];
                       else x = a[j]-a[i];
            v [x]++ ;
            if ( v[x] > maxim ) maxim = v[x] ;
        }
    }
    g << maxim ;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/1609)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/1609/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-1609/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
