蓝桥杯Java试题汇总-共48页

合集下载

蓝桥杯java练习题分类汇总

蓝桥杯java练习题分类汇总

蓝桥杯java练习题分类汇总蓝桥杯java练习题分类汇总(⼀)字符串处理类型题⽬1.密码破解据说最早的密码来⾃于罗马的凯撒⼤帝。

消息加密的办法是:对消息原⽂中的每个字母,分别⽤该字母之后的第5个字母替换(例如:消息原⽂中的每个字母A都分别替换成字母F)。

⽽你要获得消息原⽂,也就是要将这个过程反过来。

密码字母:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z M原⽂字母:V W X Y Z A B C D E F G H I J K L M N O P Q R S T U(注意:只有字母会发⽣替换,其他⾮字母的字符不变,并且消息原⽂的所有字母都是⼤写的。

)输⼊:最多不超过100个数据集组成,每个数据集之间不会有空⾏,每个数据集由3部分组成:1.起始⾏:START2.密码消息:由1到200个字符组成⼀⾏,表⽰凯撒发出的⼀条消息.3.结束⾏:END在最后⼀个数据集之后,是另⼀⾏:ENDOFINPUT。

输出:每个数据集对应⼀⾏,是凯撒的原始消息。

Sample InputSTARTNS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJXENDSTARTN BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJENDSTARTIFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ ENDENDOFINPUTSample OutputIN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSESI WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROMEDANGER KNOWS FULL WELL THAT CAESAR IS MORE DANGEROUS THAN HE2. 判断是否为回⽂串形如:“abccba”,“abcba”的串称为回⽂串(指顺读和倒读都⼀样的词语),下列代码判断⼀个串是否为回⽂串。

第八届蓝桥杯JavaC组国(决)赛真题

第八届蓝桥杯JavaC组国(决)赛真题

第⼋届蓝桥杯JavaC组国(决)赛真题解题代码部分来⾃⽹友,如果有不对的地⽅,欢迎各位⼤佬评论题⽬1、数位和题⽬描述数学家⾼斯很⼩的时候就天分过⼈。

⼀次⽼师指定的算数题⽬是:1+2+ (100)⾼斯⽴即做出答案:5050!这次你的任务是类似的。

但并⾮是把⼀个个的数字加起来,⽽是对该数字的每⼀个数位作累加。

这样从1加到100的“和”是:901从10加到15是:21,也就是:1+0+1+1+1+2+1+3+1+4+1+5,这个⼝算都可以出结果的。

按这样的“加法”,从1加到1000是多少呢? 请通过浏览器提交该结果。

当然,我们并不期望你能像⾼斯⼀样,发现数字背后深奥的秘密,只要请计算机帮忙,⼀切都easy!注意:你需要提交的是⼀个整数,不要填写任何多余的内容(⽐如:说明性⽂字)答案:13501public class _01数位和 {public static void main(String[] args) {int sum = 0;String str = "";for(int i = 1;i <= 1000;i++){str += i;}char[] arr = str.toCharArray();for(int i = 0;i < arr.length;i++){sum += arr[i]-'0';}System.out.println(sum);}}题⽬2、数字划分题⽬描述w星球的长⽼交给⼩明⼀个任务:1,2,3…16 这16个数字分为两组。

要求:这两组数字的和相同,并且,两组数字的平⽅和也相同,并且,两组数字的⽴⽅和也相同。

请你利⽤计算机的强⼤搜索能⼒解决这个问题。

并提交1所在的那个分组的所有数字。

这些数字要从⼩到⼤排列,两个数字间⽤⼀个空格分开。

即类似:1 4 5 8 … 这样的答案。

注意,只提交这⼀组数字,不要填写任何多余的内容。

笨笨有话说:只要⼀个组的成员确定了,另⼀个组的成员也就确定了。

第六届蓝桥杯大赛个人赛省赛(软件类)Java 大学B组试题

第六届蓝桥杯大赛个人赛省赛(软件类)Java 大学B组试题

第六届蓝桥杯大赛个人赛省赛(软件类)Java 大学B组试题三角形面积如图1所示。

图中的所有小方格面积都是1。

那么,图中的三角形面积应该是多少呢?请填写三角形的面积。

不要填写任何多余内容或说明性文字。

立方变自身观察下面的现象,某个数字的立方,按位累加仍然等于自身。

1^3 = 18^3 = 512 5+1+2=817^3 = 4913 4+9+1+3=17...请你计算包括1,8,17在内,符合这个性质的正整数一共有多少个?请填写该数字,不要填写任何多余的内容或说明性的文字。

三羊献瑞观察下面的加法算式:祥瑞生辉+ 三羊献瑞-------------------三羊生瑞气(如果有对齐问题,可以参看【图1.jpg】)其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。

请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。

循环节长度两个整数做除法,有时会产生循环小数,其循环部分称为:循环节。

比如,11/13=6=>0.846153846153..... 其循环节为[846153] 共有6位。

下面的方法,可以求出循环节的长度。

请仔细阅读代码,并填写划线部分缺少的代码。

public static int f(int n, int m){n = n % m;V ector v = new V ector();for(;;){v.add(n);n *= 10;n = n % m;if(n==0) return 0;if(v.indexOf(n)>=0)_______System.out.println(v.indexOf(n))__________________________ ; //填空}}注意,只能填写缺少的部分,不要重复抄写已有代码。

不要填写任何多余的文字。

九数组分数1,2,3...9 这九个数字组成一个分数,其值恰好为1/3,如何组法?下面的程序实现了该功能,请填写划线部分缺失的代码。

蓝桥杯JavaB历年竞赛真题详解

蓝桥杯JavaB历年竞赛真题详解

蓝桥杯JavaB历年竞赛真题详解
✌ 2021年第⼗⼆届省赛-题⽬+题解
题⽬序号名称题⽬类型分值
题⽬1结果填空5
题⽬2结果填空5
题⽬3结果填空10
题⽬4结果填空10
题⽬5结果填空15
题⽬6编程⼤题15
题⽬7编程⼤题20
题⽬8编程⼤题20
题⽬9编程⼤题25
题⽬10编程⼤题25✌ 2020年第⼗⼀届省赛-题⽬+题解
题⽬序号名称题⽬类型分值
题⽬1结果填空5
题⽬2结果填空5
题⽬3结果填空10
题⽬4结果填空10
题⽬5结果填空15
题⽬6编程⼤题15
题⽬7编程⼤题20
题⽬8编程⼤题20
题⽬9编程⼤题25
题⽬10编程⼤题25✌ 2019年第⼗届省赛-题⽬+题解
题⽬序号名称题⽬类型分值
题⽬1结果填空5
题⽬2结果填空5
题⽬3结果填空10
题⽬4结果填空10
题⽬5结果填空15
题⽬6编程⼤题15
题⽬7编程⼤题20
题⽬8编程⼤题20
题⽬9编程⼤题25
题⽬10编程⼤题25
题⽬10编程⼤题25✌ 2018年第九届省赛-题⽬+题解
题⽬序号名称题⽬类型分值
题⽬1结果填空5
题⽬2结果填空5
题⽬3结果填空10
题⽬4结果填空10
题⽬5结果填空15
题⽬6编程⼤题15
题⽬7编程⼤题20
题⽬8编程⼤题20
题⽬9编程⼤题25
题⽬10编程⼤题25。

蓝桥杯练习系统算法训练习题加答案java版本

蓝桥杯练习系统算法训练习题加答案java版本

算法训练编号:ALGO-1题目:区间k大数查询列关键字:排序查找类型:普通试题问题描述给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。

输入格式第一行包含一个数n,表示序列长度。

第二行包含n个正整数,表示给定的序列。

第三个包含一个正整数m,表示询问个数。

接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。

序列元素从1开始标号。

输出格式总共输出m行,每行一个数,表示询问的答案。

样例输入51 2 3 4 521 5 22 3 2样例输出42数据规模与约定对于30%的数据,n,m<=100;对于100%的数据,n,m<=1000;保证k<=(r-l+1),序列中的数<=1000000。

本题的Java参考代码如下:import java.io.BufferedInputStream;import java.io.IOException;import java.util.Arrays;public class Main{private static BufferedInputStream in = new BufferedInputStream(System.in);public static void main(String[] args) throws IOException{int[] nums = new int[readInt()];for(int i=0; i<nums.length; i++){nums[i] = readInt();}for(int i=readInt(); i>0; i--){int a = readInt();int b = readInt();int c = readInt();int[] tn = new int[b-a+1];for(int j=0; j<tn.length; j++){tn[j] = nums[a-1+j];}Arrays.sort(tn);System.out.println(tn[tn.length-c]);}}private static int readInt() throws IOException{int i,sum=0;while(((i=in.read())&48) != 48 || i>57);for(;(i&56) == 48 || (i&62) == 56; i=in.read())sum = sum*10 + (i&15);return sum;}}编号:ALGO-2题目:最大最小公倍数关键字:贪心类型:普通试题问题描述已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。

第三届蓝桥杯(高职java预赛题及参考答案)

第三届蓝桥杯(高职java预赛题及参考答案)

1、造成高房价的原因有许多,比如土地出让价格。

既然地价高,土地的面积必须仔细计算。

遗憾的是,有些地块的形状不规则,比如是如图【1.jpg】中所示的五边形。

一般需要把它划分为多个三角形来计算。

已知三边求三角形的面积需要用海伦定理,参见【2.jpg】各条边长数据如下:AB = 52.1BC = 57.2CD = 43.5DE = 51.9EA = 33.4EB = 68.2EC = 71.9根据这些数据求五边形地块的面积。

四舍五入到小数后两位。

只写结果,不要源代码!1.jpg2.jpgpublic class Onea {public static void main(String args[]){double s_ABE = (52.1 + 68.2 + 33.4) / 2;double s_BEC = (68.2 + 57.2 + 71.9) / 2;double s_EDC = (71.9 + 51.9 + 43.5) / 2;// sqrt()是Math中的静态方法可以用类名直接调用double A_ABE = Math.sqrt(s_ABE * (s_ABE - 52.1) * (s_ABE - 33.4) * (s_ABE - 68.2));double A_BEC = Math.sqrt(s_BEC * (s_BEC - 68.2) * (s_BEC - 57.2) * (s_BEC - 71.9));double A_EDC = Math.sqrt(s_EDC * (s_EDC - 71.9) * (s_EDC - 43.5) * (s_EDC - 51.9));System.out.println(A_ABE + A_BEC + A_EDC);}}// 输出的结果是3789.8640994485186public class One {public static void main(String[] args) {double AB = 52.1, BC = 57.2, CD = 43.5, DE = 51.9, EA = 33.4, EB = 68.2, EC = 71.9;System.out.println(mainji(AB,EB,EA) + mainji(EB,BC,EC) +mainji(EC,CD,DE));}static double mainji(double a,double b,double c){double s = (a + b + c)/2;return Math.sqrt(s * (s - a) * (s - b) * (s - c));}}输出结果:3789.86409944851862、今年的植树节(2012年3月12日),小明和他的叔叔还有小伙伴们一起去植树。

第九届蓝桥杯JavaC组省赛真题

第九届蓝桥杯JavaC组省赛真题

第九届蓝桥杯JavaC组省赛真题解题代码部分来⾃⽹友,如果有不对的地⽅,欢迎各位⼤佬评论题⽬1、哪天返回题⽬描述⼩明被不明势⼒劫持。

后被扔到x星站再⽆问津。

⼩明得知每天都有飞船飞往地球,但需要108元的船票,⽽他却⾝⽆分⽂。

他决定在x星战打⼯。

好⼼的⽼板答应包⾷宿,第1天给他1元钱。

并且,以后的每⼀天都⽐前⼀天多2元钱,直到他有⾜够的钱买票。

请计算⼀下,⼩明在第⼏天就能凑够108元,返回地球。

要求提交的是⼀个整数,表⽰第⼏天。

请不要提交任何多余的内容。

package Lqb;public class Text27 {public static void main(String[] args) {int money=1;int dayMoney=1;int day=1;System.out.println("第 "+day+" 天:"+"⼯资:"+dayMoney+" "+money);while(money<108){dayMoney+=2;money+=dayMoney;day++;System.out.println("第 "+day+" 天:"+"⼯资:"+dayMoney+" "+money);}}}题⽬2、猴⼦分⾹蕉题⽬描述5只猴⼦是好朋友,在海边的椰⼦树上睡着了。

这期间,有商船把⼀⼤堆⾹蕉忘记在沙滩上离去。

第1只猴⼦醒来,把⾹蕉均分成5堆,还剩下1个,就吃掉并把⾃⼰的⼀份藏起来继续睡觉。

第2只猴⼦醒来,重新把⾹蕉均分成5堆,还剩下2个,就吃掉并把⾃⼰的⼀份藏起来继续睡觉。

第3只猴⼦醒来,重新把⾹蕉均分成5堆,还剩下3个,就吃掉并把⾃⼰的⼀份藏起来继续睡觉。

第4只猴⼦醒来,重新把⾹蕉均分成5堆,还剩下4个,就吃掉并把⾃⼰的⼀份藏起来继续睡觉。

第四届蓝桥杯JAVA试题

第四届蓝桥杯JAVA试题
1
1 + -------------
1
1 + ---------
1 + ...
我做起振兴
做起振兴中
起振兴中华
比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。
要求跳过的路线刚好构成“从我做起振兴中华”这句话。
请你帮助小明算一算他一共有多少种可能的跳跃路线呢?
假设 a b c d e 代表1~9不同的5个数字(注意是各不相同的数字,且不含0)
能满足形如: ab * cde = adb * ce 这样的算式一共有多少种呢?
请你利用计算机的优势寻找所有的可能,并回答不同算式的种类数。
满足乘法交换律的算式计为不同的种类,所以答案肯定是个偶数。
}
}
}
如果给定数组:
25,18,-2,0,16,-5,33,21,0,19,-16,25,-3,0
则排序后为:
-3,-2,-16,-5,0,0,0,21,19,33,25,16,18,25
请分析代码逻辑,并推测划线处的代码,通过网页提交
注意:仅把缺少的代码作为答案,千万不要填写多余的代码、符号或说明文字!!
比如,对一个整型数组中的数字进行分类排序:
使得负数都靠左端,正数都靠右端,0在中部。注意问题的特点是:负数区域和正数区域内并不要求有序。可以利用这个特点通过1次线性扫描就结束战斗!!
以下的程序实现了该目标。
static void sort(int[] x)
{
答案直接通过浏览器提交。
注意:只提交一个表示最终统计种类数的数字,不要提交解答过程或其它多余的内容。

第四届蓝桥杯校内选拔赛试题java组

第四届蓝桥杯校内选拔赛试题java组

第四届“蓝桥杯”全国软件专业人才设计与创业大赛校内选拔赛试题(Java组)第一部分:准备工作:1、在D:盘中建立一个以自己“学号+姓名”命名的考生文件夹。

如:学号:123456,姓名:张三,则考生文件夹为:123456张三2、答题时:(1)填空题的答案全部写在一个记事本(.txt)文件中,文件名为“tk_姓名的首字母”。

如:姓名:张三,则文件名为“tk_zs.txt”(2)编程题,每个小题一个源文件,每道题的源程序文件名为:“姓名的首字母+题号”。

如:姓名:张三,第1小题,源程序文件名为“zs1.java”3、答题结束时,请把填空题答案文件和所有的源程序文件复制到您的考生文件夹中,再把考生文件夹复制到F:\LQXB4中。

第二部分:试题一、填空题:(第空5分,共50分)1、素数问题输入一个正整数,判断它是否为素数。

素数就是该数只能被1和它本身整除,除1之外的正整数。

#include <stdio.h>#include <math.h> /* 程序中调用平方根函数sqrt,需包含math.h */void main( ){int number,i,k;printf("Please enter a positive integer:");scanf("%d",&number);k=(int)sqrt(number);for(i=2;【1】______________;i++)if(number%i==0) break;/* 如果number能被某个i整除,则number不是素数,提前结束循环 *//*若number是素数,i>k时for循环才结束,若number不是素数,i<=k时,就提前结束循环。

*/if(【2】_______________)printf("%d is a prime number.\n",number);elseprintf("%d isn't a prime number.\n",number);}运行情况1:Please enter a positive integer:77 is a prime number.运行情况2:Please enter a positive integer:2020 isn’t a prime number.2、下面程序段的执行结果是【3】______________3、圆周率我国古代数学家对圆周率方面的研究工作,成绩是突出的。

蓝桥杯java试题及答案

蓝桥杯java试题及答案
//有问题。
/*import java.util.scanner;
import java.util.vector;
public class question1 {
public static long count=0;
private void fullpermutation(vectorcharactersourse, vectorcharacter result) {
*假设用户输入的串长度不超过200个字符。
*/
public class simplestring {
public static void main(string args[]){
string str=;
str=(new scanner(system.in)).nextline();
string []str1=str.split([ ]+);
每个单词间由1个或多个空格分隔。
假设用户输入的串长度不超过200个字符。
package question1_9;
import java.util.scanner;
import java.util.vector;
public class question2 {
public static void main(string[] args) {
index++;
}
index++;
}
for (int i = 0; i vector.size(); i++) {
system.out.print(vector.elementat(i));
}
system.out.println();
} catch (arrayindexoutofboundsexception e) {

蓝桥杯Java试题汇总-共48页

蓝桥杯Java试题汇总-共48页

1. 历届试题核桃的数量问题描述小张是软件项目经理,他带领3个开发组。

工期紧,今天都在加班呢。

为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。

他的要求是:1. 各组的核桃数量必须相同2. 各组内必须能平分核桃(当然是不能打碎的)3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛)输入格式输入包含三个正整数a, b, c,表示每个组正在加班的人数,用空格分开(a,b,c<30)输出格式输出一个正整数,表示每袋核桃的数量。

样例输入12 4 5样例输出120样例输入23 1 1 样例输出2 3JAVA源代码1import java.util.Scanner;2public class Main {34public static void main(String[]args){5 Scanner sc=new Scanner(System.in);6int a=sc.nextInt();7int b=sc.nextInt();8int c=sc.nextInt();9int i;10for(i=1;;i++){11if(i%a==0&&i%b==0&&i%c==0)1213break;14 }15 System.out.println(i);16}}2.基础练习Sine之舞时间限制:1.0s 内存限制:512.0MB问题描述最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三角函数基本功。

所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们的计算能力。

不妨设An=sin(1–sin(2+sin(3–sin(4+...sin(n))...)Sn=(...(A1+n)A2+n-1)A3+...+2)An+1FJ想让奶牛们计算Sn的值,请你帮助FJ打印出Sn的完整表达式,以方便奶牛们做题。

输入格式仅有一个数:N<201。

蓝桥杯模拟试题java本科组试题及答案

蓝桥杯模拟试题java本科组试题及答案

2021 模拟 java 本科注意:本套模拟题主要模拟命题形式及考核范围。

真实竞赛题的数量、难度可能及此套模拟题有差异。

说明:本试卷包含两种题型:“代码填空〞及“程序设计〞。

填空题要求参赛选手在弄清给定代码工作原理的根底上填写缺失的局部,使得程序逻辑正确、完整。

所填写的代码不多于一条语句〔即不能出现分号〕。

编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。

注意:在评卷时使用的输入数据及试卷中给出的实例数据可能是不同的。

选手的程序必须是通用的,不能只对试卷中给定的数据有效。

1.代码填空〔总分值2分〕在A B C D E F 六人中随机抽取3人中奖,要求中奖人不能重复。

请完善以下代码:public class MyTestpublic static void main(String[] args)Vector a = new Vector();for(char i='A'; i<='F'; i++) a.add("" + i);for(int k=0; k<3; k++)int d = ____________________________;System.out.println(a.remove(d));new Random().nextInt(6-k) //(int)(Math.random()*(6-k))2.代码填空〔总分值3分〕不同进制的数值间的转换是软件开发中很可能会遇到的常规问题。

下面的代码演示了如何把键盘输入的3进制数字转换为十进制。

试完善之。

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String s = br.readLine();int n = 0;for(int i=0; i<s.length(); i++)char c = s.charAt(i);if(c<'0' || c > '2') throw new RuntimeException("Format error");n = ______________________;System.out.println(n);3*n+c-'0'3.代码填空〔总分值4分〕有如下程序,完成的功能为:找出数组中的最大元素。

蓝桥杯java历年真题及答案整理41~56

蓝桥杯java历年真题及答案整理41~56

蓝桥杯java历年真题及答案整理41~56 41. 低碳⽣活⼤奖赛/*某电视台举办了低碳⽣活⼤奖赛。

题⽬的计分规则相当奇怪:每位选⼿需要回答10个问题(其编号为1到10),越后⾯越有难度。

答对的,当前分数翻倍;答错了则扣掉与题号相同的分数(选⼿必须回答问题,不回答按错误处理)。

每位选⼿都有⼀个起步的分数为10分。

某获胜选⼿最终得分刚好是100分,如果不让你看⽐赛过程,你能推断出他(她)哪个题⽬答对了,哪个题⽬答错了吗?如果把答对的记为1,答错的记为0,则10个题⽬的回答情况可以⽤仅含有1和0的串来表⽰。

例如:0010110011 就是可能的情况。

你的任务是算出所有可能情况。

每个答案占⼀⾏。

*/package Question40_49;public class Question41 {public static void exeForward(int question[],int index,int sum,int needSum) {if(index<=10){for (int i = 0; i <= 1; i++) {question[index]=i;int t=sum;if(i==0){sum-=index;}else {sum*=2;}exeForward(question, index+1, sum, needSum);question[index]=(i==1?0:1);sum=t;}}else {if(sum==needSum){for (int i = 1; i <= 10; i++) {System.out.print(question[i]);}System.out.println();return;}else {return;}}}public static void main(String[] args) {int needSum=100;int question[]=new int[12];exeForward(question, 1, 10, 100);}}运⾏结果:0010110011011101000010110100001234567891000101100110111010000101101000042. 益智玩具import java.math.BigInteger;/** 汉诺塔(⼜称河内塔)问题是源于印度⼀个古⽼传说的益智玩具。

蓝桥杯模拟试题java本科组试题及答案

蓝桥杯模拟试题java本科组试题及答案

2011 模拟 java 本科1.代码设计(满分5分) 625这个数字很特别,625的平方等于390625,刚好其末3位是625本身。

除了625,还有其它的3位数有这个特征吗?位数有这个特征吗?请编写程序,寻找所有这样的3位数:它的平方的末3位是这个数字本身。

数字本身。

输出结果中,从小到大,每个找到的数字占一行。

比如那个625就输出为:625public static void main(String[] args) {int temp = 0;for (int i = 100; i <= 999; ++i){temp = i*i;temp %= 1000;if (temp == i)System.out .println(i); }}2.代码设计(满分11分) 考虑方程式:a^3 + b^3 = c^3 + d^3其中:“^”表示乘方。

a 、b 、c 、d 是互不相同的小于30的正整数.这个方程有很多解。

比如:a = 1,b=12,c=9,d=10 就是一个解。

因为:1的立方加12的立方等于1729,而9的立方加10的立方也等于1729.当然,a=12,b=1,c=9,d=10 显然也是解。

显然也是解。

如果不计abcd 交换次序的情况,这算同一个解。

你的任务是:找到所有小于30的不同的正整数解。

把a b c d 按从小到大排列,用逗号分隔,每个解占用1行。

比如,刚才的解输出为:1,9,10,12 不同解间的顺序可以不考虑。

不同解间的顺序可以不考虑。

public static void main(String[] args) {int []arr = newint [31]; for (int i = 1; i <= 30; ++i){arr[i] = (int )i*i*i;}for (int a = 1 ; a <= 27; ++a){for (int b = a+1 ; b <= 28; ++b){for (int c = b+1 ; c <= 29; ++c){ for (int d = c+1 ; d <= 30; ++d){ if ((arr[a] + arr[d])==(arr[b] + arr[c]))System.out .println(a + .println(a + ",""," + b + "," + c + + c + ",""," + d);}}}}}3.代码设计(满分18分) 整数的分划问题。

蓝桥杯练习系统题目汇总

蓝桥杯练习系统题目汇总
样例输入
12 45
说明:“样例输入”给出了一组满足“输入格式”要求的输入的例子。
这里给出的输入只是可能用来测试你的程序的一个输入,在测试的时候,还会有更多的输入用来测试你的程序。
样例输出
57
说明:“样例输出”给出了一组满足“输出格式”要求的输出的例子。
样例输出中的结果是和样例输入中的是对应的,因此,你可以使用样例的输入输出简单的检查你的程序。
样例输入
10
样例输出
55
样例输入
22
样例输出
7704
数据规模与约定
1 <= n <= 1,000,000。
参考代码:c++
1.#include<stdlib.h>
2.#include<stdio.h>
3.#defineMOD10007
4.#defineMAXN1000001
5.intn, i, F[MAXN];
4.publicclassMain{
5.publicstaticvoidmain(String args[])throwsNumberFormatException, IOException{
6.BufferedReader strin =newBufferedReader(newInputStreamReader(System.in));
10.}
11.}
12.}
3.
问题描述
求1+2+3+...+n的值。
输入格式
输入包括一个整数n。
输出格式
输出一行,包括一个整数,表示1+2+3+...+n的值。

第十届蓝桥杯JavaC组省赛真题

第十届蓝桥杯JavaC组省赛真题

第⼗届蓝桥杯JavaC组省赛真题试题 A: 求和本题总分:5 分【问题描述】⼩明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包括 1、2、9、10 ⾄ 32、39 和 40,共 28 个,他们的和是 574。

请问,在 1 到 2019 中,所有这样的数的和是多少?【答案提交】这是⼀道结果填空的题,你只需要算出结果后提交即可。

本题的结果为⼀个整数,在提交答案时只填写这个整数,填写多余的内容将⽆法得分//这道题没什么好说的for循环暴⼒破解public class qiuhe { //1905111public static void main(String[] args) {int count=0,temp=0;for (int i = 1; i <=2019; i++) {int b = i;temp=i;while(b!=0){int a = b%10;if(a==2 || a==0||a==1||a==9){count+=temp;break;}b/=10;}}System.out.println(count);}}试题 B: 矩形切割本题总分:5 分【问题描述】⼩明有⼀些矩形的材料,他要从这些矩形材料中切割出⼀些正⽅形。

当他⾯对⼀块矩形材料时,他总是从中间切割⼀⼑,切出⼀块最⼤的正⽅形,剩下⼀块矩形,然后再切割剩下的矩形材料,直到全部切为正⽅形为⽌。

例如,对于⼀块两边分别为 5 和 3 的材料(记为 5×3),⼩明会依次切出 3×3、2×2、1×1、1×1 共 4 个正⽅形。

现在⼩明有⼀块矩形的材料,两边长分别是 2019 和 324。

请问⼩明最终会切出多少个正⽅形?【答案提交】这是⼀道结果填空的题,你只需要算出结果后提交即可。

本题的结果为⼀个整数,在提交答案时只填写这个整数,填写多余的内容将⽆法得分。

//21个正⽅形这个纯⼿算就可以,当⼀个矩形开始切割正⽅形的时候,按照矩形的宽切割就能切割出最⼤的正⽅形,⼀直按照这个思路,然后继续切最后剩下的就是1*1的正⽅形package pany;import java.util.Scanner;public class 矩形切割 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int max = sc.nextInt();int min=sc.nextInt();int count=0,num,temp;while (true){if ( min==0){//当没有得时候就可以退出了break;}num = max/min;//看看当前长宽不变得时候有⼏个正⽅形count+=num; //把这些都加进来//替换⼀下,剪完正⽅形,之后,原来得长就变成了宽,原来的宽就成了长temp=max-min*num;//原来得长减去剪掉得⼏个宽,就是现在得宽max=min;}System.out.println(count);}}试题 C: 不同⼦串本题总分:10 分【问题描述】⼀个字符串的⾮空⼦串是指字符串中长度⾄少为 1 的连续的⼀段字符组成的串。

蓝桥杯练习系统题目汇总(含参考答案)

蓝桥杯练习系统题目汇总(含参考答案)

蓝桥杯练习系统题目汇总:入门训练1. Fibonacci数列问题描述Fibonacci数列的递推公式为:F n=F n-1+F n-2,其中F1=F2=1。

当n比较大时,F n也非常大,现在我们想知道,F n除以10007的余数是多少。

输入格式输入包含一个整数n。

输出格式输出一行,包含一个整数,表示F n除以10007的余数。

说明:在本题中,答案是要求F n除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出F n的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。

样例输入10样例输出55样例输入22样例输出7704数据规模与约定1 <= n <= 1,000,000。

参考代码:c++1.#include<stdlib.h>2.#include<stdio.h>3.#define MOD 100074.#define MAXN 10000015.int n, i, F[MAXN];6.int main()7.{8.scanf("%d", &n);9.F[1] = 1;10.F[2] = 1;11.for(i = 3; i <= n; ++i)12.F[i] = (F[i-1] + F[i-2]) % MOD;13.printf("%d\n", F[n]);14.return0;15.}java:1.import java.util.Scanner;2.public class Main{3.public static void main(String[] args) {4.Scanner scanner = new Scanner(System.in) ;5.int num = scanner.nextInt() ;6.int[] a = new int[num+2] ;7.a[1] = a[2] = 1;8.if(num == 1) {9.a[num] = 1 ;10.}else if(num == 2) {11.a[num] = 1 ;12.}else{13.for(int i = 3; i <= num; i++) {14.a[i] = (a[i - 1] + a[i - 2]) % 10007 ;15.}16.}17.System.out.println(a[num]);18.}19.}2. 实数输出问题描述给定圆的半径r,求圆的面积。

蓝桥杯高职java试题及部分参考答案

蓝桥杯高职java试题及部分参考答案

2019年选拔赛 java 高职考生须知:考试时间为4小时。

本试卷包含两种题型:“代码填空”与“程序设计”。

总计100分。

其中代码填空:3+3+4+6+7+9+10 = 42 分程序设计:14+17+27 = 58分填空题要求参赛选手在弄清给定代码工作原理的基础上填写缺失的部分,使得程序逻辑正确、完整。

所填写的代码不超过一条语句(即不能出现分号)。

把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。

考生的程序只有能运行出正确结果的时候才有机会得分。

注意:在评卷时使用的输入数据与试卷中给出的实例数据可能是不同的。

选手的程序必须是通用的,不能只对试卷中给定的数据有效。

对每个题目,要求考生把所有类写在一个文件中。

调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。

相关的工程文件不要拷入。

请不要使用package语句。

另外,源程序中只能出现JDK1.5中允许的语法或调用。

不能使用1.6或更高版本。

1.代码填空(满分3分)计算蔬菜总价为了丰富群众菜篮子,平抑菜价,相关部分组织了蔬菜的调运。

今某箱中有多个品种的蔬菜。

蔬菜的单价(元/公斤)存放在price数组中,蔬菜的重量(公斤)存放在weight数组中。

下面的代码计算该箱蔬菜的总价,试完善之。

把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

public static double getTotal(double[] price, double[] weight)double x = 0;for(int i=0; i<price.length; i++)____________________;return x;2.代码填空(满分3分)计算行程低碳生活,有氧运动。

骑自行车出行是个好主意。

小明为自己的自行车装了个计数器,可以计算出轮子转动的圈数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 历届试题核桃的数量问题描述小张是软件项目经理,他带领3个开发组。

工期紧,今天都在加班呢。

为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。

他的要求是:1. 各组的核桃数量必须相同2. 各组内必须能平分核桃(当然是不能打碎的)3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛)输入格式输入包含三个正整数a, b, c,表示每个组正在加班的人数,用空格分开(a,b,c<30)输出格式输出一个正整数,表示每袋核桃的数量。

样例输入12 4 5样例输出120样例输入23 1 1 样例输出2 3JAVA源代码1import java.util.Scanner;2public class Main {34public static void main(String[]args){5 Scanner sc=new Scanner(System.in);6int a=sc.nextInt();7int b=sc.nextInt();8int c=sc.nextInt();9int i;10for(i=1;;i++){11if(i%a==0&&i%b==0&&i%c==0)1213break;14 }15 System.out.println(i);16}}2.基础练习Sine之舞时间限制:1.0s 内存限制:512.0MB问题描述最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三角函数基本功。

所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们的计算能力。

不妨设An=sin(1–sin(2+sin(3–sin(4+...sin(n))...)Sn=(...(A1+n)A2+n-1)A3+...+2)An+1FJ想让奶牛们计算Sn的值,请你帮助FJ打印出Sn的完整表达式,以方便奶牛们做题。

输入格式仅有一个数:N<201。

输出格式请输出相应的表达式Sn,以一个换行符结束。

输出中不得含有多余的空格或换行、回车符。

样例输入3样例输出((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin(3)))+1语言JAVA源代码17import java.util.Scanner;18public class Main {19private static int m;20public static void main(String[] args){21 Scanner sc=new Scanner(System.in);22 m=sc.nextInt();23for(int i=0;i<m-1;i++){24 System.out.print("(");25 }26 Sn(1);27 }28public static void An(int n,int k){29if(n==k){30 System.out.print("sin("+n);31 }else if(n%2!=0){32System.out.print("sin("+n+"-");33 }else{34System.out.print("sin("+n+"+")35 ; }36if(n<k)37 An(n+1,k);38 System.out.print(")");39 }40public static void Sn(int n){41 An(1,n);42if(n!=m){43 System.out.print("+"+(m-n+1)+")");44 }else{45 System.out.print("+"+(m-n+1));46 }47if(n<m){4849 Sn(n+1);} }}编译信息无3.基础练习FJ的字符串时间限制:1.0s 内存限制:512.0MB问题描述FJ在沙盘上写了这样一些字符串:A1 = “A”A2 = “ABA”A3 = “ABACABA”A4 = “ABACABADABACABA”… …你能找出其中的规律并写所有的数列AN吗?输入格式仅有一个数:N ≤ 26。

输出格式请输出相应的字符串AN,以一个换行符结束。

输出中不得含有多余的空格或换行、回车符。

样例输入3样例输出ABACABA言JAVA源代码50import java.util.Scanner;51public class Main {52public static char[] c ={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O', 53 'P','Q','R','S','T','U','V','W','X','Y','Z'}; 54public static void main(String[] args){55 Scanner scan = new Scanner(System.in);56int n=scan.nextInt();57 print(n); }58private static void print(int n){59if(n == 1){60 System.out.print("A");61 }62else{63 print(n - 1);64 System.out.print(c[n - 1]);print(n - 1); } }}4.基础练习芯片测试时间限制:1.0s 内存限制:512.0MB问题描述有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。

每个芯片都能用来测试其他芯片。

用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。

而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。

给出所有芯片的测试结果,问哪些芯片是好芯片。

输入格式输入数据第一行为一个整数n,表示芯片个数。

第二行到第n+1行为n*n的一张表,每行n个数据。

表中的每个数据为0或1,在这n行中的第i行第j列(1≤i, j≤n)的数据表示用第i块芯片测试第j块芯片时得到的测试结果,1表示好,0表示坏,i=j时一律为1(并不表示该芯片对本身的测试结果。

芯片不能对本身进行测试)。

输出格式按从小到大的顺序输出所有好芯片的编号样例输入31 0 10 1 01 0 1样例输出1 3语言JAVA源代码65import java.util.*;66public class Main {67public static void main(String[] args) {68 Scanner sc=newScanner(System.in);69int n=sc.nextInt();70int[][] a=new int[n][n];71for(int i=0;i<n;i++){72for(int k=0;k<n;k++){73 a[i][k]=sc.nextInt();}747576 }7778for(int k=0;k<n;k++){79int count=0;80for(int i=0;i<n;i++){81 count+=a[i][k];82 }83if(count>n/2){84 System.out.print((k+1)+" ");}85 }}}5.基础练习龟兔赛跑预测时间限制:1.0s 内存限制:512.0MB话说这个世界上有各种各样的兔子和乌龟,但是研究发现,所有的兔子和乌龟都有一个共同的特点——喜欢赛跑。

于是世界上各个角落都不断在发生着乌龟和兔子的比赛,小华对此很感兴趣,于是决定研究不同兔子和乌龟的赛跑。

他发现,兔子虽然跑比乌龟快,但它们有众所周知的毛病——骄傲且懒惰,于是在与乌龟的比赛中,一旦任一秒结束后兔子发现自己领先t米或以上,它们就会停下来休息s秒。

对于不同的兔子,t,s的数值是不同的,但是所有的乌龟却是一致——它们不到终点决不停止。

然而有些比赛相当漫长,全程观看会耗费大量时间,而小华发现只要在每场比赛开始后记录下兔子和乌龟的数据——兔子的速度v1(表示每秒兔子能跑v1米),乌龟的速度v2,以及兔子对应的t,s值,以及赛道的长度l——就能预测出比赛的结果。

但是小华很懒,不想通过手工计算推测出比赛的结果,于是他找到了你——清华大学计算机系的高才生——请求帮助,请你写一个程序,对于输入的一场比赛的数据v1,v2,t,s,l,预测该场比赛的结果。

输入格式输入只有一行,包含用空格隔开的五个正整数v1,v2,t,s,l,其中(v1,v2<=100;t<=300;s<=10;l<=10000且为v1,v2的公倍数)输出格式输出包含两行,第一行输出比赛结果——一个大写字母“T”或“R”或“D”,分别表示乌龟获胜,兔子获胜,或者两者同时到达终点。

第二行输出一个正整数,表示获胜者(或者双方同时)到达终点所耗费的时间(秒数)。

样例输入10 5 5 2 20D4样例输入10 5 5 1 20样例输出R3样例输入10 5 5 3 20样例输出T4语言JAVA源代码import java.util.Scanner; public class Main { public static voidmain(String[] args){ Scanner sc=new Scanner(System.in); int num[]=new int[5]; for(int i=0;i<5;i++)num[i]=sc.nextInt(); int sum1=0,sum2=0,time=1; for(intt=1;t<=num[4]/num[0];time++){ sum1+=num[0]*t;sum2+=num[1]*t; if(sum1==num[4]||sum2==num[4]) break;if(sum1-sum2>=num[2]){ sum2+=num[1]*num[3]; time+=num[3]; } }if(sum2>sum1){ System.out.println("T");System.out.println(num[4]/num[1]); } elseif(sum2<sum1){ System.out.println("R");System.out.println(time); }else{ System.out.println("D");System.out.println(num[4]/num[1]); } } }6.基础练习报时助手时间限制:1.0s 内存限制:512.0MB问题描述给定当前的时间,请用英文的读法将它读出来。

相关文档
最新文档