Cod sursa(job #3240944)

Utilizator divadddDavid Curca divaddd Data 24 august 2024 16:33:09
Problema Oite Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 1030;
int n,l,a[NMAX];
unordered_map<int, int> vf;

ifstream fin("oite.in");
ofstream fout("oite.out");

int main()
{
  fin >> n >> l;
  for(int i = 1; i <= n; i++){
    fin >> a[i];
  }
  int ans = 0;
  for(int i = 1; i <= n; i++){
    for(int j = i+1; j <= n; j++){
      /// am fixat ultimele 2 pozitii
      int rem = l - (a[i] + a[j]);
      if(vf.count(rem)){
        ans += vf[rem];
      }
    }
    for(int j = i-1; j >= 1; j--){
      /// am fixat primele 2
      vf[a[i] + a[j]]++;
    }
  }
  fout << ans;
  return 0;
}