Pagini recente » Cod sursa (job #1438156) | Cod sursa (job #2413097) | Cod sursa (job #1755078) | Cod sursa (job #2735613) | Cod sursa (job #1851220)
#include <fstream>
#define Imax 4105
#define NMax 66000
using namespace std;
ifstream in ("triplete.in");
ofstream out ("triplete.out");
int Iorgu[Imax][Imax/(1<<5)], left[NMax], right[NMax];
int n,m,x,y,sol;
int CountBiti (int arg)
{
int ret=0;
while (x)
{
ret++;
x-=(x&(-x));
}
return ret;
}
void Read()
{
in>>n>>m;
for (int i=1;i<=m;i++)
{
in>>left[i]>>right[i];
if (left[i]>right[i])
{
swap(left[i],right[i]);
}
Iorgu[left[i]][right[i]/(1<<5)]+=(1<<((right[i]-1)%(1<<5)));
}
}
void Solve()
{
for (int i=1;i<=m;i++)
{
for (int j=0;j<=n/(1<<5);j++)
{
sol+=CountBiti(((Iorgu[left[i]][j])&(Iorgu[right[i]][j])));
}
}
}
void Print()
{
//WOW
//MUCH FUNCTION
out<<sol;
//SUCH PROGRAMMING. WOW
}
int main()
{
Read();
Solve();
Print();
return 0;
}