在网上看到的一个方法:
分三组,记为A1,A2,A3, A4; B1, B2, B3, B4; C1, C2, C3, C4;
switch( 比较(A1A2A3A4, B1B2B3B4) ) //第一次比较
{
case =:
swicth( 比较(C1, C2)) //第二次比较
{
case >:
if( C1 > C3) return C1(较重); //第三次比较
else if( C1 == C3 ) return C2(较轻);
// C1 < C3 是不可能滴
break;
case <:
if( C1 < C3) return C1(较轻); //第三次比较
else if( C1 == C3 ) return C2(较重);
// C1 > C3 是不可能滴
break;
case =:
分三组,记为A1,A2,A3, A4; B1, B2, B3, B4; C1, C2, C3, C4;
switch( 比较(A1A2A3A4, B1B2B3B4) ) //第一次比较
{
case =:
swicth( 比较(C1, C2)) //第二次比较
{
case >:
if( C1 > C3) return C1(较重); //第三次比较
else if( C1 == C3 ) return C2(较轻);
// C1 < C3 是不可能滴
break;
case <:
if( C1 < C3) return C1(较轻); //第三次比较
else if( C1 == C3 ) return C2(较重);
// C1 > C3 是不可能滴
break;
case =: