假设你有8个外观相同的球,其中一个比其他稍重。如果给你一个天平,最少称几次你可以找出这只稍重的球?
用java程序写出
谢谢
用java程序写出
谢谢
解决方案 »
- 用itext转pdf后一点小问题
- 遇到一个gui的内存问题,觉得有点奇怪
- 谁知道JVM将内存一共分成几个模块,每个部分都存储什么,尤其是方法或是静态方法都存储在那个部分。
- 关于DataOutputStream/DataInputStream的应用
- 组件获得焦点,并能够作出响应
- [100分][急][在线等]我的“计算器”,请问怎么把它做成exe文件?
- 在线等待jdbc连接ms sql2000问题!!
- 怎么样JDBC访问SQL Server数据库啊?
- 谁能为我指点指点——在notes开发中对notes文档和非notes文档的检索怎样解决?急!!!
- Win2000就要出来了,JAVA前途如何?唉
- 怎么从指定位置进行批量修改文件名
- SQL语句
public int BinaryFind(int from,int to)
{
if(from>=to) return from;
if(weight(from,to/2)<weight(to/2+1,to) //二分数据
{
from=to/2+1; //球被分到重的哪一组
BinaryFind(from,to);
}
else
{
to=to/2
BinaryFind(from,to);
}
}
Random random = new Random();
int count = random.nextInt(9);
下面是switch结构 这样行不?
算法描述如下:(可能有点问题,毕竟没测试,但思路就是这样了,不太好意思。)
public int CompleteFind(int from,int to)
{
if(weight(from,(to-from-2)/2)==weight((to-from-2)/2),to-2))
{
if(weight(to-1)<weight(to))
return to;
else
return to-1;
}
else
{
if(weight(from,(to-from-2)/2)<=weight((to-from-2)/2),to-2))
{
from=(to-from-2)/2+1;
CompleteFind(from,to);
}
else
{
to=(to-from-2)/2;
CompleteFind(from,to);
}
}