蓝桥杯官网填空题(海盗与金币)

这篇具有很好参考价值的文章主要介绍了蓝桥杯官网填空题(海盗与金币)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

12名海盗在一个小岛上发现了大量的金币,后统计一共有将近5万枚。

登上小岛是在夜里,天气又不好。由于各种原因,有的海盗偷拿了很多,有的拿了很少。

后来为了“均贫富”,头目提出一个很奇怪的方案:

每名海盗都把自己拿到的金币放在桌上。然后开始一个游戏。

金币最多的海盗要拿出自己的金币来补偿其他人。

补偿的额度为正好使被补偿人的金币数目翻番(即变为原来的2倍)。

游戏要一直进行下去,直到无法完成。

(当金币数最多的不只一个人或最多金币的人持有金币数不够补偿他人的)

游戏就这样紧张地进行了,一直进行了12轮,恰好每人都“放血”一次,
更离奇的是,刚好在第12轮后,每个人的金币数居然都相等了!! 这难道是天意吗?

请你计算,游戏开始前,所有海盗的初始金币数目,从小到大排列,中间有一个空格分开。

答案形如:

8 15 29 58 110 ...

当然,这个不是正确答案。

运行限制

//最多金币海盗补偿的是所有金币比他少的海盗,不是只补偿一个海盗

逆推:例

最后一轮:2         2         2         2         2         2         2         2         2         2         2         2 

则上一轮:1         1         1         1         1         1         1         1         1         1         1        13文章来源地址https://www.toymoban.com/news/detail-814745.html

import java.util.Arrays;

public class main {
    public static void main(String[] args) {
        int[] jinbi=new int[12];
        for(int i=12;i<50000;i+=12){//i为第12轮后的总金币数,为12的倍数
            Arrays.fill(jinbi,i/12);
            f(jinbi,i,11);
        }
    }
    public static void f(int[] jinbi,int sum,int max){
                        //sum为金币总数,max为当前金币数最多的那个海盗的下标
        if(max<0){
            for(int i=11;i>=0;i--){
                System.out.printf(jinbi[i]+" ");
            }
            return;
        }
        int count=0;
        for(int i=0;i<12;i++){
            if(i==max){
                //如果i下标为金币数最多的那个海盗,则跳出一次循环,因为最多金币海盗不补偿自己
                continue;
            }
            if(jinbi[i]%2!=0){
                //如果第i个海盗的金币数不能被2整数,则返回函数,循环下一个总金币数
                return;
            }
            else {
                jinbi[i]=jinbi[i]/2;//逆推,上一轮的金币数为本轮金币数的一半
                count+=jinbi[i];//记录最多金币的海盗一共要补偿多少金币
            }
        }
        jinbi[max]=sum-count;//总金币数减去补偿金币的总数得到上一轮最多金币海盗的金币数
        f(jinbi,sum,max-1);
    }
}
    • 最大运行时间:1s
    • 最大运行内存: 128M

到了这里,关于蓝桥杯官网填空题(海盗与金币)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 蓝桥杯官网填空题(方格计数)

    题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 如下图所示,在二维平面上有无数个  1×1 的小方格。 我们以某个小方格的一个顶点为圆心画一个半径为  50000 的圆。 你能计算出这个圆里有多少个完整的小方格吗? 运行限制 最大

    2024年02月05日
    浏览(52)
  • 蓝桥杯官网填空题(生成树)

    问题描述 下面是一个 8 个结点的无向图的邻接矩阵表示,其中第 i 行第 j 列表示结点 i 到结点 j 的边长度。当 长度为 0 时表示不存在边。 请问,这个图的最小生成树大小的多少? 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数

    2024年02月09日
    浏览(39)
  • 蓝桥杯官网填空题(骰子迷题)

    题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 小明参加了少年宫的一项趣味活动:每个小朋友发给一个空白的骰子(它的  6 个面是空白的,没有数字),要小朋友自己设计每个面写哪个数字。但有如下要求: 每个面只能填写 

    2024年01月23日
    浏览(56)
  • 蓝桥杯官网填空题(黄金连分数)

    题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 黄金分割数  0.61803... 是个无理数,这个常数十分重要,在许多工程问题中会出现。有时需要把这个数字求得很精确。 对于某些精密工程,常数的精度很重要。也许你听说过哈勃太空

    2024年02月05日
    浏览(85)
  • 蓝桥杯官网填空题(奇怪的分式)

    题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 上小学的时候,小明经常自己发明新算法。一次,老师出的题目是:1/4乘以8/5 小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45(参见下图) 老师刚想批评他,转念一想,

    2024年01月25日
    浏览(41)
  • 蓝桥杯官网填空题(三角形的面积)

    题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 已知三角形三个顶点在直角坐标系下的坐标分别为: ```txt (2.3, 2.5) (6.4, 3.1) (5.1, 7.2) ```txt 求该三角形的面积。 注意,要提交的是一个小数形式表示的浮点数。 要求精确到小数后 3 位

    2024年02月09日
    浏览(49)
  • 蓝桥杯官网练习题(旋转)

    题目描述 图片旋转是对图片最简单的处理方式之一,在本题中,你需要对图片顺时针旋转 90 度。 我们用一个 n×m 的二维数组来表示一个图片,例如下面给出一个 3×4 的 图片的例子: 1 3 5 7 9 8 7 6 3 5 9 7 这个图片顺时针旋转 90 度后的图片如下: 3 9 1 5 8 3 9 7 5 7 6 7 给定初始图

    2024年02月09日
    浏览(41)
  • 蓝桥杯官网题目:2.包子凑数

    链接: 题目点这里 首先要知道一个数学定理裴蜀定理,还有完全背包的基本运用,这里只介绍前者 也可以看一下我的个人理解,我是第一次听说这个定理,理解可能有误差。 假设gcd(a,b)=d,gcd是最大公约数的意思。即a,b的最大公约数是d ax+by=m(x,y是任意整数,可正可负) 对

    2024年01月21日
    浏览(48)
  • 蓝桥杯官网练习题(移动距离)

    题目描述 X 星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为 1,2,3,··· 当排满一行时,从下一行相邻的楼往反方向排号。 比如:当小区排号宽度为 6 时,开始情形如下: 1    2     3    4   5   6 12  11  10  9    8   7 13  14  15  ··· 我们的问题是

    2024年02月05日
    浏览(69)
  • 蓝桥杯官网练习题(正则问题)

    题目描述 考虑一种简单的正则表达式: 只由 x ( ) | 组成的正则表达式。 小明想求出这个正则表达式能接受的最长字符串的长度。 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是: xxxxxx,长度是 6。 输入描述 一个由 x()| 组成的正则表达式。输入长度不超过 100,保证合法。 输出

    2024年02月05日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包