Pagini recente » Cod sursa (job #949250) | Cod sursa (job #1260034) | Cod sursa (job #128594) | Cod sursa (job #340519) | Cod sursa (job #744627)
Cod sursa(job #744627)
#include <iostream>
#include <stdio.h>
#include <math.h>
#include <stack>
#include <cstdlib>
#include <vector>
#include <algorithm>
#include <string.h>
using namespace std;
void sol();
int main() {
#ifdef PADREATI
freopen("in.txt", "r", stdin);
#else
freopen("nrtri.in", "r", stdin);
freopen("nrtri.out", "w", stdout);
#endif
sol();
return 0;
}
#define N 801
#define LEN 30001
int n;
int v[N];
int cmp(const void* o1, const void *o2) {
return *(int*)o1-*(int*)o2;
}
void sol() {
scanf("%d", &n);
for (int i = 0; i < n; i++) scanf("%d", &v[i]);
qsort(v, n, sizeof(int), cmp);
int* cnt = (int*)calloc(LEN, sizeof(int));
for (int i = 0; i < n; i++) if(cnt[v[i]]==0) cnt[v[i]]=i+1;
for (int i = LEN-2; i >=0; i--) cnt[i] = cnt[i]==0 ? cnt[i+1] : cnt[i];
int t = 0;
for (int i = 1; i < n; i++)
for (int j = i + 1; j < n; j++)
if (i > cnt[v[j] - v[i]]-1)
t += i - cnt[v[j] - v[i]]+1;
printf("%d\n", t);
}