import itertools
def c(a):
x=a[0][0]*a[1][1]*a[2][2]+a[0][1]*a[1][2]*a[2][0]+a[0][2]*a[1][0]*a[2][1]
y=a[0][0]*a[1][2]*a[2][1]+a[0][1]*a[1][0]*a[2][2]+a[0][2]*a[1][1]*a[2][0]
return x-y
s=-10000
r=[]
for a in itertools.permutations(range(1,10)):
x=c([a[:3],a[3:6],a[6:]])
if x>s:
r=a[:]
s=x
print r,s
import itertools
def c(a):
x=a[0][0]*a[1][1]*a[2][2]+a[0][1]*a[1][2]*a[2][0]+a[0][2]*a[1][0]*a[2][1]
y=a[0][0]*a[1][2]*a[2][1]+a[0][1]*a[1][0]*a[2][2]+a[0][2]*a[1][1]*a[2][0]
return x-y
for a in itertools.permutations(range(1,10)):
x=c([a[:3],a[3:6],a[6:]])
if x==412:
print a
#include <iostream>
using namespace std;
int data[9];
int flag[9];
void go(int n)
{
if(n==5)
{ for(int i=0;i<5;i++)
cout<<data[i]<<' ';
cout<<endl;
}
else
{
for(int j=1;j<6;j++)
{
if(flag[j-1]==0)
{
data[n]=j;
flag[j-1]=1;
go(n+1);
flag[j-1]=0;
}
}
}
}
int main()
{
go(0);
}