/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生
* All rights reserved.
* 文件名称: 蓝桥杯赛题
* 作 者: 彭俊豪
* 完成日期: 2016 年 04月 01日
* 版 本 号: 001
* 对任务及求解方法的描述部分
* 输入描述: 无
* 问题描述:
你一定听说过这个故事。国王对发明国际象棋的大臣很佩服,问他要什么报酬,
大臣说:请在第1个棋盘格放1粒麦子,在第2个棋盘格放2粒麦子,在第3个棋盘格放4粒
麦子,在第4个棋盘格放8粒麦子,......后一格的数字是前一格的两倍,直到放完所有
棋盘格(国际象棋共有64格)。
国王以为他只是想要一袋麦子而已,哈哈大笑。
当时的条件下无法准确计算,但估算结果令人吃惊:即使全世界都铺满麦子也不够用!
请你借助计算机准确地计算,到底需要多少粒麦子。
* 程序输出: 无
* 程序头部的注释结束
*/
上代码:
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
BigInteger b1 = new BigInteger("1");
for (int i = 1; i <= 64; i++) {
b1 = b1.multiply(BigInteger.valueOf(2));
}
b1 = b1.subtract(BigInteger.ONE);
System.out.println(b1);
}
}