蓝桥杯
走在冷风中的冬
记录自己的点点滴滴,记录自己的成长过程中所学习到的知识
展开
-
平方怪圈
题目描述如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。对新产生的正整数再做同样的处理。如此一来,你会发现,不管开始取的是什么数字,最终如果不是落入1,就是落入同一个循环圈。请写出这个循环圈中最大的那个数字。解决方法public class C_3 { public static void main(String[] args) { double s = 0; double max = 0; int t = 22; for (int i = 0; i < 100原创 2021-01-31 16:35:58 · 134 阅读 · 0 评论 -
方格填数
题目描述如下的10个格子填入0~9的数字。要求:连续的两个数字不能相邻。(左右、上下、对角都算相邻)一共有多少种可能的填数方案?解决方法import java.util.ArrayList;public class B_6 { public static ArrayList<Integer> path = new ArrayList<>(); public static int num; public static void backtracking(int[]原创 2021-01-31 16:34:20 · 246 阅读 · 0 评论 -
凑算式
题目描述这个算式中A-I代表1~9的数字,不同的字母代表不同的数字。比如:6+8/3+952/714 就是一种解法,5+3/1+972/486 是另一种解法。这个算式一共有多少种解法?解决方法public class B_3 { public static ArrayList<Integer> path = new ArrayList<>(); public static int num; public static void backtracking(in原创 2021-01-31 16:31:46 · 132 阅读 · 0 评论 -
寒假作业
题目描述现在小学的数学题目也不是那么好玩的。看看这个寒假作业:□ + □ = □□ - □ = □□ × □ = □□ ÷ □ = □每个方块代表1~13中的某一个数字,但不能重复。比如:6 + 7 = 139 - 8 = 13 * 4 = 1210 / 2 = 5以及:7 + 6 = 139 - 8 = 13 * 4 = 1210 / 2 = 5就算两种解法。(加法,乘法交换律后算不同的方案)你一共找到了多少种方案?解决方法public class A_6原创 2021-01-31 16:28:52 · 103 阅读 · 0 评论 -
搭积木
题目描述小明最近喜欢搭数字积木,一共有10块积木,每个积木上有一个数字,0~9。搭积木规则:每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小。最后搭成4层的金字塔形,必须用完所有的积木。下面是两种合格的搭法:请你计算这样的搭法一共有多少种?解决方法public class A_3 { public static int num = 0; public static void perm(int[] arr,int startIndex){ if (原创 2021-01-31 16:25:56 · 98 阅读 · 0 评论 -
生日蜡烛
题目描述某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。*/解决方法public class A_2 { public static void main(String[] args) { int o = 236*2; for(int i = 1;i<=100;i++) { for(int j = i+1;j<=100原创 2021-01-31 16:22:40 · 62 阅读 · 0 评论 -
煤球数目
煤球数目有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),…如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。解决方法public class A_1 { public static void main(String[] args) { int s = 0,t = 0; for (int i = 1; i <= 100; i++) { t = t + i; s原创 2021-01-31 16:20:28 · 81 阅读 · 0 评论 -
打印大X
题目描述小明希望用星号拼凑,打印出一个大X,他要求能够控制笔画的宽度和整个字的高度。为了便于比对空格,所有的空白位置都以句点符来代替。要求输入两个整数m n,表示笔的宽度,X的高度。用空格分开(0<m<n, 3<n<1000, 保证n是奇数)要求输出一个大X解决方法import java.util.Scanner;public class C_9 { public static void main(String[] args) { Scanner in = n原创 2021-01-31 16:18:00 · 93 阅读 · 0 评论 -
剪邮票
题目描述如图有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。(仅仅连接一个角不算相连)比如中,粉红色所示部分就是合格的剪取。请你计算,一共有多少种不同的剪取方法。解决方法先选出组合再进行判断连通性public class A_7 { public static ArrayList<Integer> path = new ArrayList<>(); public static int num; public static i原创 2021-01-31 14:34:22 · 71 阅读 · 0 评论 -
立方尾不变
题目描述有些数字的立方的末尾正好是该数字本身。比如:1,4,5,6,9,24,25,…请你计算一下,在10000以内的数字中(指该数字,并非它立方后的数值),符合这个特征的正整数一共有多少个。解决方法public class C_2 { public static int f(int i) {//判断一个整数的位数 int s = 0; while(i>0) { s++; i = i/10; }原创 2021-01-05 21:11:51 · 106 阅读 · 0 评论 -
立方变自身
题目描述观察下面的现象,某个数字的立方,按位累加仍然等于自身。1^3 = 18^3 = 512 5+1+2=817^3 = 4913 4+9+1+3=17…请你计算包括1,8,17在内,符合这个性质的正整数一共有多少个?解决方法public class B_2 { public static void main(String[] args) { int s,i,t; ArrayList<Integer> list = new ArrayList<Int原创 2021-01-05 21:09:34 · 62 阅读 · 0 评论 -
加法变乘法
题目描述我们都知道:1+2+3+ … + 49 = 1225现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015比如:1+2+3+…+10* 11+12+…+27*28+29+…+49 = 2015就是符合要求的答案。请你寻找另外一个可能的答案解决方法:暴力破解public class A_6 { public static void main(String[] args) { int s = 1225; int o = 2015; ArrayList<Inte原创 2021-01-05 20:55:27 · 112 阅读 · 0 评论 -
打印菱形
题目描述解决方法public class A_5{ public static void f(int n) { String s = "*"; for(int i=0; i<2*n-3; i++) s += "."; s += "*"; String s1 = s + "\n"; String s2 = ""; for(int i=0; i<n-1; i++){ //System.out.println("=>"+s); //s是临原创 2021-01-05 18:40:45 · 58 阅读 · 0 评论 -
九数分三组
题目描述1~9的数字可以组成3个3位数,设为:A,B,C, 现在要求满足如下关系:B = 2 * AC = 3 * A请写出A的所有可能答案解决方法:暴力解决 ArrayList<Integer> array = new ArrayList<Integer>(); HashSet<Integer> set = new HashSet<Integer>(); int a,b,c; for(a = 123;a<=333;a++)原创 2021-01-01 21:40:47 · 363 阅读 · 0 评论 -
星系炸弹
题目描述在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。每个炸弹都可以设定多少天之后爆炸。比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。解决方法:直接使用LocalDateTime类的方法即可LocalDateTime time = LocalDateTime.of(2014, 11,9, 0, 0);System.out.println(time原创 2021-01-01 21:38:39 · 91 阅读 · 0 评论 -
熊怪吃核桃
题目描述森林里有一只熊怪,很爱吃核桃。不过它有个习惯,每次都把找到的核桃分成相等的两份,吃掉一份,留一份。如果不能等分,熊怪就会扔掉一个核桃再分。第二天再继续这个过程,直到最后剩一个核桃了,直接丢掉。有一天,熊怪发现了1543个核桃,请问,它在吃这些核桃的过程中,一共要丢掉多少个核桃。解决方法: int s = 1543,t = 0; while(s > 0) { if(s%2==0) { s = s/2; } else { t++; s = (原创 2021-01-01 21:36:14 · 115 阅读 · 0 评论