#include <stdio.h>
#include <stdlib.h>
int* zuhe()
{
int a[144];
int i, j, count = 0, key = 1;;
for(i = 0; i < 144; i++)
{
if(i < 6 )
a[i] = 1;
else
a[i] = 0;
}
while(key)
{
key = 0;
for(i = 0; i < 144; i++)
if(a[i] == 1 && a[i + 1] == 0)
{
a[i + 1] = 1;
a[i] = 0;
for (j = 0; j < i; j++)
{
if (a[j] == 1)
count ++;
}
if (count < i)
{
for (j = 0; j < count; j++)
{
a[j] = 1;
}
for (j = count; j < i; j++)
{
a[j] = 0;
}
}
key = 1;
break;
}
}
return a;
}
int main()
{
int i, c = 0, m = 24;
int *a;
a = zuhe();
for(i = 0; i < 144; i++)
{
if(a[i] == 1)
{
if(i >= 0 && i < m )
a[i] = 1;
if(i >= m && i < 2 * m)
a[i] = 2;
if(i >= 2 * m && i < 3 * m)
a[i] = 3;
if(i >= 3 * m && i < 4 * m)
a[i] = 4;
if(i >= 4 * m && i < 5 * m)
a[i] = 5;
if(i >= 5 * m && i < 6 * m)
a[i] = 6;
for(i = 0; i < 144; i++)
printf(" %d", a[i]);
c++;
if(c % 24 == 0)
printf("\n");
}
}
return 0;
}