Pagini recente » Cod sursa (job #539583) | Cod sursa (job #556384) | Cod sursa (job #1459459) | Cod sursa (job #977468) | Cod sursa (job #1933690)
#include<cstdio>
#include<bitset>
using namespace std;
int vertices, edges, answer;
int A[65538], B[65538];
bitset<4098> adj[4098];
inline int get_nr(){
int number = 0;
char c = getchar();
while(!(47 < c && c < 58)){
c = getchar();
}
while(47 < c && c < 58){
number = number * 10 + c - '0';
c = getchar();
}
return number;
}
int main(){
freopen("triplete.in", "r", stdin);
freopen("triplete.out", "w", stdout);
vertices = get_nr();
edges = get_nr();
for(int i = 1; i <= edges; i++){
A[i] = get_nr();
B[i] = get_nr();
if(A[i] < B[i]) adj[A[i]].set(B[i]);
else adj[B[i]].set(A[i]);
}
for(int i = 1; i <= edges; i++){
answer += (adj[A[i]] & adj[B[i]]).count();
}
printf("%d", answer);
return 0;
}