Pagini recente » Cod sursa (job #1244398) | Cod sursa (job #9250) | Cod sursa (job #144168) | Cod sursa (job #2759890) | Cod sursa (job #14524)
Cod sursa(job #14524)
//? puncte
//O(n)
#include <fstream>
using namespace std;
#define in "triplete.in"
#define out "triplete.out"
#define NMAX 4096
#define MMAX 65540
int n, m, nrsol,prov, total;
int grad[NMAX];
FILE *fout = fopen( out, "w" );
int main()
{
FILE *fin = fopen ( in, "r" );
int i;
int x,y;
fscanf( fin, "%d%ld", &n, &m );
for ( i = 1; i <= m; ++i )
{
fscanf( fin, "%d%d", &x, &y);
grad[x]++;
grad[y]++;
}
//rezolvare
total = ( n * (n-1) * (n-2) ) / 6;
for ( i = 1; i <= n; ++i )
{
prov = 0;
prov = grad[i] * ( n - 1 - grad[i] );
total -= prov;
}
fprintf(fout, "%ld\n", total );
fclose ( fin );
fclose ( fout );
return 0;
}