美文网首页
19.蓝桥杯2012第三题麦子问题

19.蓝桥杯2012第三题麦子问题

作者: FiveZM | 来源:发表于2018-03-30 23:12 被阅读0次

/*

  • 、你一定听说过这个故事。国王对发明国际象棋的大臣很佩服,问他要什么报酬,
  • 大臣说:请在第1个棋盘格放1粒麦子,在第2个棋盘格放2粒麦子,在第3个棋盘格放4粒麦子,在第4个棋盘格放8粒麦子,......后一格的数字是前一格的两倍,直到放完所有棋盘格(国际象棋共有64格)。
    国王以为他只是想要一袋麦子而已,哈哈大笑。
    当时的条件下无法准确计算,但估算结果令人吃惊:即使全世界都铺满麦子也不够用!
    请你借助计算机准确地计算,到底需要多少粒麦子。
    */

解法:
因为数值太大,一般类型都装不下,必须要用到大整型BigInteger,
创建一个数值为0和2的BigInteger, 0 用来累加,2用于底数,
因为从题中可以得到规律,第一个棋盘中有1粒麦子,1 为 2的零次方 2为 2的1次方 4 为 2的2次方 ......

BigInteger 中的add为加法函数,pow为 值得次方函数


import java.math.BigInteger;

public class B3_2 {

    public static void main(String[] args) {
        BigInteger bi = new BigInteger("0");
        BigInteger two = new BigInteger("2");
        for(int i =0;i<64;i++) {
            bi = bi.add(two.pow(i));
        }
        System.out.println(bi.toString());
    }

}

相关文章

  • 19.蓝桥杯2012第三题麦子问题

    /* 、你一定听说过这个故事。国王对发明国际象棋的大臣很佩服,问他要什么报酬, 大臣说:请在第1个棋盘格放1粒麦子...

  • 18.蓝桥杯2012第二题

    /* 2、今年的植树节(2012年3月12日),小明和他的叔叔还有小伙伴们一起去植树。休息的时候,小明的同学问他叔...

  • 第七届蓝桥杯JAVA B组真题解析-凑算式(第三题)

    第七届蓝桥杯JAVA B组真题解析-凑算式(第三题) 凑算式 A+B/C+DEF/GHI =10 (如果显示有问题...

  • 蓝桥杯真题题解收藏

    收藏一些在网上发现的,觉得写的不错的蓝桥杯真题题解内容,给学生练习备战蓝桥杯时所用。2020蓝桥杯省赛第二场C组_...

  • 蓝桥杯2017真题——日期问题

    题目:日期问题小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在1960年1月1日至20...

  • 【蓝桥杯python】小白的艰难刷题之路。A+B问题

    先给大家献上蓝桥杯的练习系统,因为我是新手刷题人所以先更新一下基础练习的普通试题集。“蓝桥杯”练习系统 (lanq...

  • [蓝桥杯]正则问题

    问题 1887: [蓝桥杯][2017年第八届真题]正则问题 题目描述 考虑一种简单的正则表达式:只由 x ( )...

  • 蓝桥杯-倍数问题

    标题:倍数问题【题目描述】众所周知,小葱同学擅长计算,尤其擅长计算一个数是否是另外一个数的倍数。但小葱只擅长两个数...

  • 蓝桥杯算法题练习

    1.入门训练 Fibonacci数列 最基础的,用java,普通无脑递归必爆。 2.入门训练 圆的面积 注意输出的...

  • 蓝桥杯 C/C++ A组省赛

    2018 第一题 答案:1048575/524288 第二题 蓝桥杯好像很喜欢考闰年相关的题....闰年分为普通闰...

网友评论

      本文标题:19.蓝桥杯2012第三题麦子问题

      本文链接:https://www.haomeiwen.com/subject/jaywcftx.html