Pagini recente » Cod sursa (job #372799) | Cod sursa (job #2356110) | Cod sursa (job #2525792) | Cod sursa (job #6812) | Cod sursa (job #1471997)
#include<fstream>
using namespace std;
ifstream in("patrate.in");
ofstream out("patrate.out");
struct muchie
{
int x, y;
};
const int nmax = 4100, mmax = 66000, b = 32;
int n, m, rasp, vecini[nmax][nmax / b];
muchie v[mmax];
int nb1(int x)
{
int nb = 0;
while (x)
{
++ nb;
x &= (x - 1);
}
return nb;
}
int main()
{
int player_unu=0;
in>>n>>m;
for (int i = 1; i<=m ; i++)
{
in>>v[i].x>>v[i].y;
if (v[i].x>v[i].y)
swap(v[i].x, v[i].y);
vecini[v[i].x][v[i].y / b] += (1 << (v[i].y % b)) ;
}
for (int i = 1; i<=m ; i++)
{
for (int j = 0; j<=n / b; j++)
rasp += nb1(vecini[v[i].x][j] & vecini[v[i].y][j]);
}
out<<rasp<<'\b';
return player_unu;
}