原题:
12枚金币中存在一枚伪币,且未知真币伪币谁轻谁重.现给你一个无砝码的天平,看你是否能想出一个只进行3次称量,便可找到伪币的算法.
最好仔细地说明思路.....
12枚硬币编号为a~z。
伪代码描述:
if(abcd>efgh){
if(defg>hijk){
if(d>a)
return(d)
else return(h);
}
if(defg=hijk){
if(a>b)return(a);
if(a<b)return(b);
if(a=b)return(c);
}
if(defg<hijk){
if(e<f)return(e);
if(e>f)return(f);
if(e=f)return(g);
}
}
if(abcd<efgh){
与上面类似
}
if(abcd=efgh){
if(ij>ab){
if(i>j)
return(i)
else return(j);
}
if(ij<ab){
与上面类似
}
if(ij=ab){
if(k<>a)
return(k)
else return(l);
}
}