Cod sursa(job #3125476)

Utilizator unomMirel Costel unom Data 3 mai 2023 14:31:58
Problema Medie Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>

using namespace std;

ifstream in("medie.in");
ofstream out("medie.out");
int n;
int v[9005];
int frec[7005];
int xmin = 10000;
int xmax = -1;
long long ans = 0;

int main()
{
    in>>n;

    for(int i = 1; i<=n; i++)
    {
        in>>v[i];
        frec[v[i]]++;
        xmin = min(xmin, v[i]);
        xmax = max(xmax, v[i]);
    }

    for(int i = 1; i<=n; i++)
    {
        frec[v[i]]--;
        if(frec[v[i]] >= 1)
        {
            ans += (frec[v[i]] * (frec[v[i]]-1)) / 2;
        }
        frec[v[i]]++;

        for(int j = 1; v[i] + j <= xmax && v[i]-j >= xmin; j++)
        {
            ans += frec[v[i]+j] * frec[v[i]-j];
        }
    }

    out<<ans;

    return 0;
}