Cod sursa(job #1671331)

Utilizator AndreiFlorescuAndrei Florescu AndreiFlorescu Data 1 aprilie 2016 16:19:51
Problema Medie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <fstream>

using namespace std;

int sir[9001];
int freq[7001];

int main() {
    ifstream file_in ("medie.in");
    ofstream file_out ("medie.out");

    int n;
    int i, j;
    long long sol1 = 0;

    // Citirea datelor
    file_in >> n;
    for (i = 0; i < n; i++) {
        file_in >> sir[i];
        freq[sir[i]]++;
    }

    // Calcularea solutiei
    for (i = 0; i < n - 1; i++) {
        for (j = i + 1; j < n; j++) {
            if ((sir[i] + sir[j]) % 2 == 0) {
                sol1 += freq[(sir[i] + sir[j]) >> 1];
                if (sir[i] == sir[j]) {
                    sol1 -= 2;
                }
            }
        }
    }

    // Afisaraea solutiei
    file_out << sol1;

    return 0;
}