#include<stdio.h>
int main()
{
char str[7][4]={"BCG","BGC","CBG","CGB","GBC","GCB"};
int a[7][4]={{1,3,2},{1,2,3},{3,1,2},{3,2,1},{2,1,3},{2,3,1}};
int input[4][4];
long i,j,total,max,max_i,temp;
while(scanf("%d",&input[1][1])==1)
{
total=0;
total+=input[1][1];
for (j=2 ; j<=3 ; j++)
{
scanf("%d",&input[1][j]);
total+=input[1][j];
}
for(i=2;i<=3;i++)
{
for(j=1;j<=3;j++)
{
scanf("%d",&input[i][j]);
total+=input[i][j];
}
}
max=2147483647;
for(i=0;i<6;i++)
{
temp=total-input[1][a[i][0]]-input[2][a[i][1]]-input[3][a[i][2]];
if(max>temp)
{
max=temp;
max_i=i;
}
}
printf("%s %ld\n",&str[max_i],max);
}
return 0;
}
int main()
{
char str[7][4]={"BCG","BGC","CBG","CGB","GBC","GCB"};
int a[7][4]={{1,3,2},{1,2,3},{3,1,2},{3,2,1},{2,1,3},{2,3,1}};
int input[4][4];
long i,j,total,max,max_i,temp;
while(scanf("%d",&input[1][1])==1)
{
total=0;
total+=input[1][1];
for (j=2 ; j<=3 ; j++)
{
scanf("%d",&input[1][j]);
total+=input[1][j];
}
for(i=2;i<=3;i++)
{
for(j=1;j<=3;j++)
{
scanf("%d",&input[i][j]);
total+=input[i][j];
}
}
max=2147483647;
for(i=0;i<6;i++)
{
temp=total-input[1][a[i][0]]-input[2][a[i][1]]-input[3][a[i][2]];
if(max>temp)
{
max=temp;
max_i=i;
}
}
printf("%s %ld\n",&str[max_i],max);
}
return 0;
}
Nice, my method was much slower. I generated the six combinations in run time.
ReplyDelete