蓝桥杯 2013 全国软件设计大赛 模拟赛 Java 本科B组 解题 告

        好几天前老师说有测试赛,我一直没拿到题,所以一直没做,今天ll老师发到了群里,我就下载下来做了,感觉题目挺难,难度和去年软件大赛决赛c本科一个水准。。想在两个小时之内做完必须有聪哥那样的水平,我差不多一共用了3个半小时才做完,可能是因为我Java学的挺差的。。Java功底雄厚的童鞋,完全可以秒杀我。。

题目在这里:点击打开下载链接


第一题:连续平方数

题目描述:

为了表示方便,我们把5的平方记为:5^2
这样,连续自然数的平方和就记为:1^2 + 2^2 + 3^2 + 4^2 + …


请看下面的公式:

1^2 + 2^2 + 3^2 + 4^2 + … + x^2 = y^2

是不是存在整数x,y,使得公式成立呢然x=y=1 勉强成立,数学上称为“平凡解”。

你的任务是寻找该方程的某个非平凡解(实际上只有1个)。

请填写该公式中x所代表的数字。
注意不要填写多余的内容。

答案与得分:

24 得分10分

分析:

纯暴力就行。。。代码如下

代码:

第二题:硬币方案

题目描述:

有50枚硬币,可能包括4种类型:1元,5角,1角,5分。
已知总价值为20元。求各种硬币的数量。
比如:2,34,6,8 就是一种答案。
而 2,33,15,0 是另一个可能的答案,显然答案不唯一。

你的任务是确定类似这样的不同的方案一共有多少个(包括已经给出的2个)br>
直接提交该数字,不要提交多余的内容。

答案与得分:

50 得分16分

分析:

(PS:如果不知道dp是啥,或者感觉无从下手的,就先看背包九讲中的第一部分01背包,然后再做我博客里面DP背包专辑中01背包的部分,做完前11道题,再敲一下完全背包的前两题,然后这道题就很轻松了。。。) 看到这道题第一反应就是dp,如果换做一年前的话就是暴搜了,暴搜肯定能出结果,但是效率、空间各方面都不如dp,而且如果这道题放在OJ上面,暴搜一般就会TLE掉。 dp的状态转移方程如下: for (i = 0; i < 4; i++) 
        for (j = 1; j <= 50; j++) 
                for (k = 400; k >= coin[i]; k–) 
                        dp[j][k] += dp[j-1][k-coin[i]];
实际上就是一个递推,dp[j][k] 表示硬币个数在j以内,弄出k块钱的解法的个数。

代码:

第三题:连续公倍数

题目描述: 为什么1小时有60分钟,而不是100分钟呢是历史上的习惯导致。
但也并非纯粹的偶然:60是个优秀的数字,它的因子比较多。
事实上,它是1至6的每个数字的倍数。即1,2,3,4,5,6都是可以除尽60。

我们希望寻找到能除尽1至n的的每个数字的最小整数。

不要小看这个数字,它可能十分大,比如n=100, 则该数为:
69720375229712477164533808935312303556800

为此,有必要使用BigInteger来记录这样的大数。

请阅读下面的代码,填写缺失的部分(下划线部分)。

答案与得分:

x[j] /= x[i]    18分

分析:

额。。怎么说呢。。每次做填空题就是凭着感觉。。就做出来了。。

第四题:二阶魔方

题目描述:

魔方可以对它的6个面自由旋转。

我们来操作一个2阶魔方(如图1所示)
为了描述方便,我们为它建立了坐标系。

xyz 则表示顺序执行x,y,z 3个操作

题目的要求是:
从标准输入获得一个串,表示操作序列。
程序输出:距离我们最近的那个小方块的3个面的颜色。
顺序是:x面,y面,z面。

例如:在初始状态,应该输出:
绿红白

初始状态下,如果用户输入:
x
则应该输出:
绿白橙

初始状态下,如果用户输入:
zyx
则应该输出:
红白绿

样例输入:

xy
xxyyy
xyzzzzyyyxxx
xyyzzz
xyxyzzxyxyzz

样例输出:

红白绿
白红蓝
绿红白
黄绿橙
白绿红

得分:

5组数据,正确数据个数*5  满分25

分析:

其实这道题可以通过对编 来进行找规律,从而更快更有效的来重置魔方,但是本弱菜太菜了。。只能通过手工画图,然后一一对比,找到转换魔方编 的方法。。。相当于纯暴力,代码比较容易读懂。。下图是我画的图。。 每个格子表示颜色,白色用灰色代替了。。每四个小格子组成一个大格子,左上角写了他属于一开始的哪一个面, 用直线画的是每一种转法。。。可能会有点乱,少有不慎就会有错误结果 蓝桥杯 2013 全国软件设计大赛 模拟赛 Java 本科B组 解题 告

代码:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2013年3月1日
下一篇 2013年3月2日

相关推荐