第十三届蓝桥杯国赛Java大学A组题解 |
您所在的位置:网站首页 › 火柴数字题 › 第十三届蓝桥杯国赛Java大学A组题解 |
目录 A.火柴数字 题目: 题解: B.小蓝与钥匙 题目: 题解: part1-组合数计算: 组合数公式: 代码表示: part2-错排数计算: 错排数公式: 代码表示: C.内存空间 题目: 题解: part1-统计byte数: part2-byte转换: 总体代码: D.斐波那契数组 题目: 题解: E.交通信号(8AC 2TL) 题目: 题解: F.数组个数(TODO) G.六六大顺 题目: 题解: 解法1(通项公式法 6AC 4TL): 解法2(按位分析 10AC): H.选素数 题目: 题解: 素数筛: 2次操作: I.图书借阅(TODO) J.括号序列树(11AC 9TL) 题目: 题解: 最大匹配: 度为1的节点: 解法1-差分(11AC 9TL): 解法2-杨辉三角: 杨辉三角: 组合数: 乘法逆元: 奇数层节点数之和: 缺失的分支数(TODO): A.火柴数字 题目:小蓝最近迷上了用火柴棒拼数字字符, 方法如下图所示: 他只能拼 0 至 9 这十种数字字符, 其中每个数字字符需要的火柴棒的数目 依次是: 6,2,5,5,4,5,6,3,7,6。 他不喜欢重复拼同一个数字字符, 所以对于每个 数字字符他最多拼十个。 小蓝会把拼出来的数字字符组合在一起形成一个整数, 例如对于整数 345 , 需要的火柴棒的数目为5+4+5=14根。 小蓝有 300 根 火柴棒, 他想知道自己能拼出的最大整数是多少? 可以不使用完这 300 根火柴 棒, 可以有多余的火柴棒剩下。 题解:对于拼出来的数字要最大, 那么首先就要使数字尽可能地长, 就比如数字1只需要2根火柴棒,而数字0却需要6根, 足足能拼出3个数字1, 显然拼需要火柴棒少的数字优先, 如果消耗相同,那么数字大的优先, 按照这个方式对这10个数字进行优先级排序就是: 数字1745329608消耗23455566672*10+3*10+4*10+5*10+5*10+5*10+6*10=300 所以可以拼出数字1、7、4、5、3、2、9恰好各10个, 最大数字就将他们从大到小排列即可 所以最终答案为: 999999999977777777775555555555333333333322222222221111111111 B.小蓝与钥匙 题目:小蓝是幼儿园的老师, 他的班上有 28 个孩子, 今天他和孩子们一起进行了 一个游戏。 小蓝所在的学校是寄宿制学校, 28 个孩子分别有一个自己的房间, 每个房 间对应一把钥匙, 每把钥匙只能打开自己的门。 现在小蓝让这 28 个孩子分别将 自己宿舍的钥匙上交, 再把这 28 把钥匙随机打乱分给每个孩子一把钥匙, 有 28!=28*27*...*1 种分配方案。 小蓝想知道这些方案中, 有多少种方案恰有 一半的孩子被分到自己房间的钥匙 (即有 14 个孩子分到的是自己房间的钥匙, 有 14 个孩子分到的不是自己房间的钥匙)。 题解:这是一个 组合数 与 错排数 的问题 28个孩子中有14个孩子得到自己的钥匙共有C(28,14)种方案, 14个孩子得到的钥匙都不是自己的钥匙有D(14)种方案, 那么最终答案就是C(28,14)*D(14), 其中C为组合数,D为错排数 part1-组合数计算: 组合数公式:组合数的计算公式是 递推公式含义: 左式表示从n个元素中选取m个元素; 右式则是另一种实现方式: 假设n里的某个元素是特殊元素, 那么从n个元素中选取m个元素可以分为两类情况, ①选择的m个元素中不包含特殊元素, 那么就是从n-1个元素中选择m个元素 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |