Pagini recente » Cod sursa (job #3263006) | Cod sursa (job #2064970) | Cod sursa (job #374199) | Cod sursa (job #488618) | Cod sursa (job #447468)
Cod sursa(job #447468)
#include <cstdio>
#define file_in "triplete.in"
#define file_out "triplete.out"
long long n,m,grad[100000];
char ch[100];
void citire()
{
long long i,x,y,j;
freopen(file_in,"r",stdin);
freopen(file_out,"w",stdout);
scanf("%lld %lld\n", &n, &m);
for (i=1;i<=m;++i)
{
gets(ch);
x=y=j=0;
while (ch[j]!=' ')
{
x=x*10+ch[j]-'0';
j++;
}
j++;
while (ch[j])
{
y=y*10+ch[j]-'0';
j++;
}
grad[x]++;
grad[y]++;
}
}
void solve()
{
long long i,nr;
long long s=0,ss;
for (i=1;i<=n;++i)
grad[i]=n-1-grad[i];
for (i=1;i<=n;++i)
s+=((n-1-grad[i])*grad[i]);
ss=(n*(n-1)*(n-2))/6;
printf("%lld", ss-s/2);
}
int main()
{
citire();
solve();
fclose(stdin);
fclose(stdout);
return 0;
}