Cod sursa(job #58222)

Utilizator crawlerPuni Andrei Paul crawler Data 4 mai 2007 18:17:06
Problema Oite Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <cstdio>
#include <ext/hash_map>

using namespace std;
using namespace __gnu_cxx;

hash_map<unsigned,unsigned> h(512513);

int main()
 {
  freopen("oite.in","r",stdin);
  freopen("oite.out","w",stdout);

  unsigned v[1024], i, k, n, L, tmp, S = 0;

  scanf("%u%u", &n,&L);

  for(i=0;i<n;++i)
   scanf("%u", v+i);

  sort(v,v+n-1);

  for(k=2;k<n;++k)
   {
    tmp = k-1;
    for(i=0;i<tmp;++i)
     ++h[v[i] + v[tmp]];

    tmp = L - v[k];

    for(i=k+1;i<n;++i)
     S += h[tmp - v[i]];
   }

  printf("%u\n", S);

  return 0;
 }