十三个球问题

//有十三个球,一个和其他重量不一样,但不知道这个球偏轻还是偏重,有一个没有刻度的天平,有三次称量的机会称出和其他球不一样的球

----------------------->请思考!
    
                         |


                         | 

 

                         | 

 

 

                         |  

 

 

 

 

                         | 

现在我们用编程思想解决它!

---------------------------------------------------------------------------------

//1、把球分为A=4,B=4,C=5三份
var A=4;
var B=4;
var C=5;
if(A==B){
 	//A,B两份的球都是正常的;不正常的球在C中
 	//2、在A,B中拿出D=3个正常的球;把C中的球分为E=3,F=2两份;
 	var D=3;
 	var E=3;
 	var F=2;
 	if(D==E){
  		//当中得球全是正常的,不正常在F中
 		 //3、从F中拿出一个和正常球比较
  		 //一样就是另一个不正常,不一样就是它了
 	}else{
 		 //应为D中全是正常的,E中有一个不正常,通过偏向可知道那一个球是比较轻x|比较重Y
 		 //3、从E中拿出两个比较比较
  		 //一样就是第三个不正常,不一样就是这两个中有一个不真正常,x|y就是不正常的
 	}
 
}else{
 	//假如是A>B
 	//不正常的球在A或B中,要是球比较重在A中,要是球比较轻在B中;但C=5中的球都是正常的
 	//2、从A,B中拿出M(5)=A(3)+B(2)个
 	var M="A(3)+B(2)";
 	if(M==D){
 		 //M中的球都是正常的,不正常在A(1)|比较重或是在B(2)中|比较轻
 		 //3、从A(1)中拿出1个B中拿出1个和正常的H=2比较
 		 var N="A(1)+B(1)";
  		var H=2;
  		if(N==H){
   			//N中的是正常的
   			//不正常是B(2)-B(1)中
 		 }else if(N>H){
 			  //这个不正常球比较重
  			 //就是A(1)
 		 }else if(N<H){
  			 //这个不正常球比较轻
  			 //就是B(1)
  		}
  
 	}else if(M>D){
 		 //这个不正常球比较重,在A(3)中
  		//3、从A拿出两个进行比较
   		//一样重就是第三个不正常,不一样就是重的哪一个
 	}else if(M<D){
  		//这个不正常球比较轻,在B(2)中
 		 //3、拿出这两个进行比较
  		 //轻的那个是不正常的
  
 	}
}



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值