Pagini recente » Cod sursa (job #1571687) | Cod sursa (job #1338366) | Cod sursa (job #2544547) | Cod sursa (job #2020756) | Cod sursa (job #2336508)
#include <fstream>
using namespace std;
ifstream f("copii.in");
ofstream g("copii.out");
char a[15][15];
int sol[15],ans,n;
bool your_mom_is_gay[15][15];
void verification_function_2(int m)
{int i,j;
if (m==1)
{
return;
}
for (i=1;i<=n;i++)
{
for (j=1;j<=n;j++)
{
your_mom_is_gay[i][j]=false;
}
}
for (i=1;i<=n;i++)
{
for (j=1;j<=n;j++)
{
if (a[i][j]=='1')
{
your_mom_is_gay[sol[i]][sol[j]]=true;
}
}
}
for (i=1;i<=m;i++)
{
for (j=1;j<=m;j++)
{
if (i!=j&&your_mom_is_gay[i][j]==false)
{
return ;
}
}
}
ans++;
}
void back_tracking(int p,int m)
{
int i;
if (p==n+1)
{
verification_function_2(m);
return;
}
for(i=1;i<=m;i++)
{
sol[p]=i;
back_tracking(p+1,m);
}
sol[p]=m+1;
back_tracking(p+1,m+1);
}
int i,j,m;
int main()
{
f>>n;
for (i=1;i<=n;i++)
{
f>>(a[i]+1);
}
back_tracking(1,0);
g<<ans;
return 0;
}