蓝桥杯第七 java决赛_第七届(16年)蓝桥杯java B组决赛真题
1、愤怒小鸟(填空)
X星球愤怒的小鸟喜欢撞火车!
一根平直的铁轨上两火车间相距 1000 米
两火车 (不妨称A和B) 以时速 10米/秒 相对行驶。
愤怒的小鸟从A车出发,时速50米/秒,撞向B车,
然后返回去撞A车,再返回去撞B车,如此往复....
两火车在相距1米处停车。
问:这期间愤怒的小鸟撞 B 车多少次?
注意:需要提交的是一个整数(表示撞B车的次数),不要填写任何其它内容。
1 public classOne {2 //A、B的位置a、b的大小相对于A的起点而言,小鸟的速度为50,A、B的速度都为10
3 public static double sum=0;//sum用于鸟和B在规定期间相撞的次数
4 public static void funb(double a,double b){//在路程a、b间鸟由A撞向B
5 if(b-a<=1){6 System.out.println(sum);7 return;8 }9 double time=(b-a)/(50+10);//距离为a、b期间鸟和B相撞的时的时间
10 a=a+10*time;//撞后A的位置
11 b=b-10*time;//撞后B的位置
12 sum++;13 funa(a,b);//鸟和B相撞后鸟转向A而行
14 return;15 }16
17 public static void funa(double a,double b){//鸟由B向A飞行
18 if(b-a<1){//若鸟和B撞完后AB距离小于1,则sum--
19 sum--;20 System.out.println(sum);21 }22 double time=(b-a)/(50+10);23 a=a+10*time;//撞后A的位置
24 b=b-10*time;//撞后B的位置
25 funb(a,b);26 return;27 }28 public static voidmain(String args[]){29 double a=0,b=1000;30 funb(a,b);31 }32 }
愤怒的小鸟(两个函数间递归)
答案为:9
2、反幻方(填空)
我国古籍很早就记载着
2 9 4
7 5 3
6 1 8
这是一个三阶幻方。每行每列以及对角线上的数字相加都相等。
下面考虑一个相反的问题。
可不可以用 1~9 的数字填入九宫格。
使得:每行每列每个对角线上的数字和都互不相等呢?
这应该能做到。
比如:
9 1 2
8 4 3
7 5 6
你的任务是搜索所有的三阶反幻方。并统计出一共有多少种。
旋转或镜像算同一种。
比如:
9 1 2
8 4 3
7 5 6
7 8 9
5 4 1
6 3 2
2 1 9
3 4 8
6 5 7
等都算作同一种情况。
请提交三阶反幻方一共多少种。这是一个整数,不要填写任何多余内容。
1 public classMain {2 public static int sum = 0;//计数器
3
4 public static void fun(int a[], intn) {5 if (n == 9) {6 text(a);7 return;8 } else{9 for (int i = n; i < 9; i++) { //n后面的
10 int temp =a[i];11 a[i] =a[n];12 a[n] =temp;13 fun(a, n + 1);14 int tamp =a[i];15 a[i] =a[n];16 a[n] =tamp;17 }18 }19 }20
21 public static void text(inta[]) {22 int l1 = a[0] + a[1] + a[2];23 int l2 = a[3] + a[4] + a[5];24 int l3 = a[6] + a[7] + a[8];25 int s1 = a[0] + a[3] + a[6];26 int s2 = a[1] + a[4] + a[7];27 int s3 = a[2] + a[5] + a[8];28 int x1 = a[0] + a[4] + a[8];29 int x2 = a[2] + a[4] + a[6];30 if (l1 != l2 && l1 != l3 && l1 != s1 && l1 != s2 && l1 != s3 && l1 != x1 && l1 !=x2)31 if (l2 != l3 && l2 != s1 && l2 != s2 && l2 != s3 && l2 != x1 && l2 !=x2)32 if (l3 != s1 && l3 != s2 && l3 != s3 && l3 != x1 && l3 !=x2)33 if (s1 != s2 && s1 != s3 && s1 != x1 && s1 !=x2)34 if (s2 != s3 && s2 != x1 && s2 !=x2)35 if (s3 != x1 && s3 !=x2)36 if (x1 !=x2)37 sum++;38 }39 public static voidmain(String[] args){40 int a[]={1,2,3,4,5,6,7,8,9};41 fun(a,0);42 System.out.print(sum/8);43 }44 }
三阶反幻方(递归)
答案为:3120
3、打靶(填空)
小明参加X星球的打靶比赛。
比赛使用电子感应计分系统。其中有一局,小明得了96分。
这局小明共打了6发子弹,没有脱靶。
但望远镜看过去,只有3个弹孔。
显然,有些子弹准确地穿过了前边的弹孔。
不同环数得分是这样设置的:
1,2,3,5,10,20,25,50
那么小明的6发子弹得分都是多少呢?有哪些可能情况呢?
下面的程序解决了这个问题。
仔细阅读分析代码,填写划线部分缺失的内容。
public class Main
{
static void f(int[] ta, int[] da, int k, int ho, int bu, int sc)
{
if(ho<0 || bu<0 || sc<0) return;
if(k==ta.length){
if(ho>0 || bu>0 || sc>0) return;
for(int i=0; i
for(int j=0; j
System.out.print(ta[i] + " ");
}
System.out.println();
return;
}
for(int i=0; i<=bu; i++){
da[k] = i;
f(ta, da, k+1, __________________ , bu-i, sc-ta[k]*i); // 填空位置
}
da[k] = 0;
}
public static void main(String[] args)
{
int[] ta = {1,2,3,5,10,20,25,50};
int[] da = new int[8];
f(ta, da, 0, 3, 6, 96);
}
}
注意:只填写划线处缺少的内容,不要填写已有的代码或符号,也不要填写任何解释说明文字等。
1 public classMain2 {3 static void f(int[] ta, int[] da, int k, int ho, int bu, intsc)4 {5 if(ho<0 || bu<0 || sc<0) return;6 if(k==ta.length){7 if(ho>0 || bu>0 || sc>0) return;8 for(int i=0; i
16 for(int i=0; i<=bu; i++){17 da[k] =i;18 f(ta, da, k+1, ho-1%(i+1) , bu-i, sc-ta[k]*i); //填空位置
19 }20
21 da[k] = 0;22 }23
24 public static voidmain(String[] args)25 {26 int[] ta = {1,2,3,5,10,20,25,50};27 int[] da = new int[8];28 f(ta, da, 0, 3, 6, 96);29 }30 }
打靶(递归)
答案(划线代码):ho-1%(i+1)
或:ho-da[k]/Math.max(da[k],1)
4、
蓝桥杯第七 java决赛_第七届(16年)蓝桥杯java B组决赛真题相关推荐
- 第七届(16年)蓝桥杯java B组决赛真题及前四题解析
1. 愤怒小鸟 X星球愤怒的小鸟喜欢撞火车! 一根平直的铁轨上两火车间相距 1000 米 两火车 (不妨称A和B) 以时速 10米/秒 相对行驶. 愤怒的小鸟从A车出发,时速50米/秒,撞向B车, 然 ...
- 蓝桥杯单片机十一届省赛_“第十届蓝桥杯青少组C++省赛”前三题解题思路及参考答案!...
关注 及时了解信息学竞赛相关资讯 第十一届蓝桥杯青少组C++省赛即将到来,待考的各位小同学有没有刷完去年的真题呢?以下是为大家复习准备的"第十届蓝桥杯青少组C++省赛"前三题解题思 ...
- java实验七输入输出流_实验七 输入输出流
java 程序设计实验 实验七 输入输出流(2) 一.实验目的 输入和输出是Java的核心功能之一.本节学习了Inputstream和OutputStream,Reader,Writer的几个子类,通 ...
- 蓝桥杯c语言a组省赛试题及答案,2016-蓝桥杯-省赛-C语言大学A组全部真题.doc
第七届蓝桥杯大赛个人赛省赛真题(软件类) C/C++ 大学A组 考生须知: 考试开始后,选手首先下载题目,并使用考场现场公布的解压密码解压试题. 考试时间为4小时.时间截止后,提交答案无效. 在考试强 ...
- 2020年第11届蓝桥杯省赛Python组(真题+解析+代码):数字三角形
大家好,我是爱分享的小蓝,欢迎交流指正~ 1 真题 输入 5 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 输出 27 2 解析 难度系数:⭐⭐ 考察题型:动态规划 涉及知识点:模块 ...
- 反转字符串java实现_反转字符串的几种实现(Java)
反转字符串的几种实现(Java) 首先第一种是利用Java中的类库对象进行反转 //第一种 使用Java类库的diam实现反转 public String reverse(String str){ S ...
- java书籍_这本最适合夯实基础的Java 书籍,80% 的 Java 程序员没认真看过
今天要给大家带来的一本书,是大名鼎鼎的head first系列丛书的一本<head first Java>相信很多学习Java的朋友对它都不会陌生. 深入浅出系列书籍是由O'Reilly出 ...
- 知识图谱java实现_知识图谱:neo4j(四)Java API
知识图谱:neo4j(四)Java API 知识图谱:neo4j(四)Java API Neo4j Java API Neo4j 提供 JAVA API 以编程方式执行所有数据库操作.它支持两种类型的 ...
- 心java源代码_写了一个心形图案的java源代码,想发给朋友,朋友怎样才能像打开文档一样方便查看呢?...
搞清楚java的运行机制你就明白了该怎么办 java源代码->java编译器生成字节码文件->java虚拟机执行字节码文件->心形图案显示 因此你要让朋友直接运行,你就要让上述过程自 ...
- 红米2支持java吗_红米2a会有报错:java.lang.NullPointerException
离线打包版本用的是2016年3月16日发布的. 其他手机正常,目前只有红米2a会有报错:java.lang.NullPointerException log信息如下: java.lang.Runtim ...
最新文章
- 五个为你的设计添加光影效果的简单技巧(转)
- windows下使用QtXlsx
- python中常见的异常错误
- JAVA中for循环写杨辉三角,java使用for循环输出杨辉三角
- 数学家出身的阿拉伯语诗人
- 精讲23种设计模式-基于观察者模式~设计异步多渠道群发框架
- 易语言下载别人的源码编译出来用不了_我是如何阅读源码的
- 向eclipse中导入myeclipse项目
- Django最新版(1.10.5)在SAE上面部署流程
- 用python画漂亮图-使用 Python/matplotlib 画出漂亮的论文插图
- storm无损 the wolven_TheFatRat,Maisy Kay-The Storm[FLAC格式]
- c语言include iostream,求助,虚拟机上#includeiostream一直报错
- 这是 qq整人代码 VB
- Hive系列(三)实操
- 告别996之Stream学习总结
- 【iphone】开发者传授APP开发,审核,发布流程!
- Java实现二维码编码与解码
- 5、谷歌地图官方API-可视化数据:地震图
- 翼方健数CEO罗震——推动区域级数据互联互通的先行者
- c语言流程图注释框,求此编程添加注释及流程图
热门文章
- 解决sockjs.js?9be2:1609 GET http://192.168.1.1:8080/sockjs-node/info?t=1634257459…… 中的报错
- 抛物线运动JavaScript实现
- json数据格式化展示出来
- Caffe RPN:把RPN网络layer添加到caffe基础结构中
- Apache Mahout:适合所有人的可扩展机器学习框架
- 模拟手指触摸 Android,TouchLib
- linux 安装windows字库,Linux安装windows字体
- php如何打开数据库,php数据库怎么打开
- SQL 给字符串补0
- RHEL 6.6安装桌面环境GNOME