Cod sursa(job #1933649)

Utilizator 1475369147896537415369Andrei Udriste 1475369147896537415369 Data 20 martie 2017 20:59:38
Problema Triplete Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include<cstdio>
#include<bitset>
using namespace std;

int vertices, edges, answer;
int A[65536], B[65536];
bitset<4096> adj[4096];

int main(){

    freopen("triplete.in", "r", stdin);
    freopen("triplete.out", "w", stdout);

    scanf("%d %d", &vertices, &edges);

    for(int i = 0; i < edges; i++){

        scanf("%d %d", &A[i], &B[i]);

        if(A[i] < B[i]) adj[A[i]].set(B[i]);
        else adj[B[i]].set(A[i]);
    }

    for(int i = 0; i < edges; i++){
        answer += (adj[A[i]] & adj[B[i]]).count();
    }

    printf("%d", answer);

    return 0;
}