zl程序教程

您现在的位置是:首页 >  前端

当前栏目

【蓝桥杯省赛】冲刺练习题【循环】倒计时【15】天

循环 蓝桥 15 倒计时 练习题 省赛 冲刺
2023-09-14 09:05:03 时间

🙏🤗距离【第十三届蓝桥杯4月9日省赛】仅剩【15天】🤗🙏

📋今日题型:【循环】📋

⭐️🤗循环是一切暴力的基础,暴力基础,转起来。🤗⭐️

🤗国一镇楼🤗

📋比赛题目与分数比例📋

确认范围:

结果填空题5道,共计45分。

程序设计题5道,共计105分。

⭐️🤗刷题安排🤗⭐️

日期题目类型题目数量
3月25日循环6
3月26日超大数6
3月27日数组6
3月28日枚举6
3月29日递归6
3月30日绘图6
3月31日深搜广搜5
4月1日动态规划5
4月2日填空题5
4月3日数学公式:查询准考证5
4月4日第十届省赛题10
4月5日第十一届省赛题10
4月6日第十二届省赛1套题10
4月7日第十二届省赛2套题10
4月8日经典题目练习8
4月9日9点考试

目录

1、隔行变色

2、煤球数目

3、哪天返回

4、猴子分香蕉

5、求和

6、加法变乘法

附加、立方尾不变

总结


1、隔行变色

Excel表的格子很多,为了避免把某行的数据和相邻行混淆,可以采用隔行变色的样式。
小明设计的样式为:第1行蓝色,第2行白色,第3行蓝色,第4行白色,....
现在小明想知道,从第21行到第50行一共包含了多少个蓝色的行。

请你直接提交这个整数,千万不要填写任何多余的内容。

题解:

package demo;
 
public class demo {
	public static void main(String[] args) {
		int color = 0;
		for (int i = 21; i <= 50; i++) {
			if (i % 2 != 0) {
				color++;
			}
		}
		System.out.println(color);
	}
}

2、煤球数目

有一堆煤球,堆成三角棱锥形。具体:
第一层放1个,
第二层3个(排列成三角形),
第三层6个(排列成三角形),
第四层10个(排列成三角形),
....
如果一共有100层,共有多少个煤球?

请填表示煤球总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

题解:

package demo;
 
public class demo {
	public static void main(String[] args) {
		int an = 1;
		int sn = an;
		for (int i = 2; i <= 100; i++) {
			an += i;
			sn += an;
		}
		System.out.println(sn);
	}
}

3、哪天返回

小明被不明势力劫持。后被扔到x星站再无问津。小明得知每天都有飞船飞往地球,但需要108元的船票,而他却身无分文。
他决定在x星战打工。好心的老板答应包食宿,第1天给他1元钱。
并且,以后的每一天都比前一天多2元钱,直到他有足够的钱买票。
请计算一下,小明在第几天就能凑够108元,返回地球。

package action;
 
public class demo {
	public static void main(String[] args) {
		int an = 1;
		int sn = 0;
		int n=0;
		for (n = 0; sn < 108; n++) {
			sn += an;
			an += 2;
		}
		System.out.println(n);
	}
}

4、猴子分香蕉

5只猴子是好朋友,在海边的椰子树上睡着了。这期间,有商船把一大堆香蕉忘记在沙滩上离去。
第1只猴子醒来,把香蕉均分成5堆,还剩下1个,就吃掉并把自己的一份藏起来继续睡觉。
第2只猴子醒来,重新把香蕉均分成5堆,还剩下2个,就吃掉并把自己的一份藏起来继续睡觉。
第3只猴子醒来,重新把香蕉均分成5堆,还剩下3个,就吃掉并把自己的一份藏起来继续睡觉。
第4只猴子醒来,重新把香蕉均分成5堆,还剩下4个,就吃掉并把自己的一份藏起来继续睡觉。
第5只猴子醒来,重新把香蕉均分成5堆,哈哈,正好不剩!

请计算一开始最少有多少个香蕉。

题解:

package action;
 
public class demo {
	public static void main(String[] args) {
		for (int n = 20;; n++) {
			double y = n; // 桃子的个数
			for (int x = 1; x <= 4; x++) {
				y = y - x - (y - x) / 5;
			}
			if (y % 5 == 0) {
				System.out.println(n);
				break;
			}
		}
	}
}

5、求和

试题 A: 求和
本题总分:5 分
【问题描述】
小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包
括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574。
请问,在 1 到 2019 中,所有这样的数的和是多少?
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

package action;
 
public class demo {
	public static void main(String[] args) {
		int sum = 0;
		for (int i = 0; i <= 2019; i++) {
			// 将数字转换为字符串
			String str = String.valueOf(i);
			if (str.contains("2") || str.contains("0") || str.contains("1") ||str.contains("9")) {
				sum += i;
			}
		}
		System.out.println(sum);
	}
}

6、加法变乘法

我们都知道:1+2+3+ ... + 49 = 1225
现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015

比如:
1+2+3+...+10*11+12+...+27*28+29+...+49 = 2015
就是符合要求的答案。

请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。

注意:需要你提交的是一个整数,不要填写任何多余的内容。

题解:

package demo;
 
public class demo {
	public static void main(String[] args) {
		for (int i = 0; i < 47; i++) {
			for (int j = i + 2; j < 49; j++) {
				if (1225 + i * i + j * j == 2015 + (i + 1) + (j + 1)) {
					System.out.println(i);
				}
			}
		}
	}
}

附加、立方尾不变

有些数字的立方的末尾正好是该数字本身。
比如:1,4,5,6,9,24,25,....

请你计算一下,在10000以内的数字中(指该数字,并非它立方后的数值),符合这个特征的正整数一共有多少个。

请提交该整数,不要填写任何多余的内容。

题解:

package demo;
 
public class demo {
	public static void main(String[] args) {
		int count = 0;
		for (int i = 1; i <= 10000; i++) {
			String x = i + "";
			String cudb =  cudb(i) + "";
			// 切割立方数最后相应几位
			String y = cudb.substring(cudb.length() - x.length());
			// 判断是否相同
			if (y.equals(x)) {
				count++;
			}
		}
		System.out.println(count);
	}
	
	/**
	 * @param x
	 * @return
	 */
	public static long cudb(int x) {
		return (long)Math.pow(x, 3);
	}
}

总结

这类题一般是蓝桥的第1/2题或3题,相对来说比较简单,但是只要做出来,基本省三是可以拿到的。

题目难度会随着练习越来越难,对于刚刷题没几天的小伙伴可以快速的弄个奖。