Pagini recente » Cod sursa (job #1119766) | Cod sursa (job #1275393) | Cod sursa (job #660253) | Cod sursa (job #583867) | Cod sursa (job #387192)
Cod sursa(job #387192)
#include <cstdio>
#include <cstring>
#define file_in "count.in"
#define file_out "count.out"
int aa[2010][2010],i,j,k,nr,max,x[60100],y[60100],m,n,frecv[10100],a,b,c,d,viz[10100];
int main()
{
int i;
freopen(file_in,"r",stdin);
freopen(file_out,"w",stdout);
scanf("%d %d", &n, &m);
for (i=1;i<=m;++i)
{
//scanf("%d %d", &x[i], &y[i]);
scanf("%d %d", &x[i], &y[i]);
aa[x[i]][y[i]]=aa[y[i]][x[i]]=1;
}
for (i=1;i<=n;++i)
for (j=i+1;j<=n;++j)
for (k=j+1;k<=n;++k)
if (aa[i][j] && aa[i][k] && aa[j][k])
nr++;
max=3;
int nrr=0;
for (i=1;i<=m;++i)
for (j=i+1;j<=m;++j)
{
if (viz[a] && viz[b] && viz[c] && viz[d]) continue;
a=x[i];
b=y[i];
c=x[j];
d=y[j];
memset(frecv,0,sizeof(frecv));
if (a!=c && b!=d && a!=d && b!=c)
{
for (k=1;k<=m;++k)
if ((x[k]==a || x[k]==b || x[k]==c || x[k]==d) &&
(y[k]==a || y[k]==b || y[k]==c || y[k]==d))
frecv[x[k]]++,
frecv[y[k]]++;
}
if (frecv[a]==3 && frecv[b]==3 && frecv[c]==3 && frecv[d]==3)
nrr++,
viz[a]=1,viz[b]=1,viz[c]=1,viz[d]=1;
}
if (nrr!=0)
max=4,
nr=nrr;
printf("%d %d", max,nr);
fclose(stdin);
fclose(stdout);
return 0;
}