海盗与金币
海盗与金币 JAVA大学C组 12名海盗在一个小岛上发现了大量的金币,后统计一共有将近5万枚。 登上小岛是在夜里,天气又不好。由于各种原因,有的海盗偷拿了很多,有的拿了很少。 后来为了“均贫富”,头目提出一个很奇怪的方案: 每名海盗都把自己拿到的金币放在桌上。然后开始一个游戏。 金币最多的海盗要拿出自己的金币来补偿其他人。 补偿的额度为正好使被补偿人的金币数目翻番(即变为原来的2倍)。 游戏要一直进行下去,直到无法完成。 (当金币数最多的不只一个人或最多金币的人持有金币数不够补偿他人的) 游戏就这样紧张地进行了,一直进行了12轮,恰好每人都“放血”一次, 更离奇的是,刚好在第12轮后,每个人的金币数居然都相等了!! 这难道是天意吗? 请你计算,游戏开始前,所有海盗的初始金币数目,从小到大排列,中间有一个空格分开。 答案形如: 13 25 49 97 193 385 769 1537 3073 6145 12289 24577 当然,这个就是(正确答案)!!!划重点 要考的~ 注意: 需要提交的是一行空格分开的整数,不要提交任何多余的内容。 分隔符要用一个西文的空格,不要用其它符号(比如逗号,中文符号等) 下面是我得JAVA解法,欢迎指正!! 在这里插入代码片 public static void main(String[] args) { // 12名海盗 int[] cold =