Cod sursa(job #2774940)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 13 septembrie 2021 17:11:54
Problema Triplete Scor 100
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.52 kb
#include<stdio.h>
int n,m,a[65537],b[65537],i,j,t,c[4097][130],r,l;
int main()
{
    freopen("triplete.in","r",stdin),freopen("triplete.out","w",stdout),scanf("%d%d",&n,&m);
    for(i=1;i<=m;++i) {
        scanf("%d%d",a+i,b+i);
        if(a[i]>b[i])
             j=a[i],a[i]=b[i],b[i]=j;
        c[a[i]][b[i]/32]+=(1<<(b[i]%32));
    }
    for(i=1;i<=m;++i)
        for(j=0;j<=n/32;++j) {
            for(l=0,r=c[a[i]][j]&c[b[i]][j];r;l++,r&=(r-1));
            t+=l;
        }
    printf("%d",t);
    return 0;
}