网站建设的收获体会,虾子酱 wordpress,电商分销,青岛市城市建设局网站目录
题目1#xff1a;数的分解
题目描述
运行限制
代码#xff1a;
题目2#xff1a;猜生日
题目描述
运行限制
代码#xff1a;
题目3#xff1a;成绩分析
题目描述
输入描述
输出描述
输入输出样例
运行限制
代码#xff1a;
题目4#xff1a;最大和…目录
题目1数的分解
题目描述
运行限制
代码
题目2猜生日
题目描述
运行限制
代码
题目3成绩分析
题目描述
输入描述
输出描述
输入输出样例
运行限制
代码
题目4最大和_dp质数筛
问题描述
输入格式
输出格式
样例输入
样例输出
样例输出
评测用例规模与约定
运行限制
代码 题目1数的分解 题目描述 本题为填空题只需要算出结果后在代码中使用输出语句将所填结果输出即可。 把 2019 分解成 3 个各不相同的正整数之和并且要求每个正整数都不包含数字 2 和 4一共有多少种不同的分解方法 注意交换 3 个整数的顺序被视为同一种方法例如 1000100118 和 1001100018 被视为同一种。 运行限制 最大运行时间1s最大运行内存: 128M代码
package 第十四届蓝桥杯三月真题刷题训练.数的分解;import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.StreamTokenizer;/*** author yx* date 2023-03-08 8:33*/
public class 数的分解 {static PrintWriter out new PrintWriter(System.out);static BufferedReader insnew BufferedReader(new InputStreamReader(System.in));static StreamTokenizer innew StreamTokenizer(ins);/*** 输入* in.nextToken()* int a (int)in.nval;** 输出* out.print();* out.flush();*/public static void main(String[] args) {int ans0;//设置kji1避免重复满足各不相同for (int i 1; i 2019; i) {for (int j i1; j 2019; j) {for (int k j1; k 2019; k) {if(ijk2019){String sijk;if(!s.contains(2)!s.contains(4)){
// System.out.println(s (ijk));ans;}}}}}System.out.println(ans);}
}题目2猜生日 题目描述 本题为填空题只需要算出结果后在代码中使用输出语句将所填结果输出即可。 今年的植树节2012 年 3 月 12 日小明和他的叔叔还有小伙伴们一起去植树。休息的时候小明的同学问他叔叔多大年纪他叔叔说“我说个题目看你们谁先猜出来” “把我出生的年月日连起来拼成一个 8 位数月、日不足两位前补 0正好可以被今天的年、月、日整除” 他想了想又补充到“再给个提示我是 6 月出生的。” 根据这些信息请你帮小明算一下他叔叔的出生年月日。 格式是年月日连成的 8 位数。例如如果是 1948 年 6 月 12 日就写19480612。 运行限制 最大运行时间1s最大运行内存: 128M代码
package 第十四届蓝桥杯三月真题刷题训练.day5;import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.StreamTokenizer;/*** author yx* date 2023-03-08 8:53*/
public class 猜生日 {static PrintWriter out new PrintWriter(System.out);static BufferedReader insnew BufferedReader(new InputStreamReader(System.in));static StreamTokenizer innew StreamTokenizer(ins);/*** 输入* in.nextToken()* int a (int)in.nval;** 输出* out.print();* out.flush();*/public static void main(String[] args) {for (int i 19000000; i 20120312; i) {if(i % 2012 0 i % 12 0 (i/100)%1006){/*输出之后控制台上打印出192306961955060419900692筛选得到19550604*/System.out.println(i);}}}
}题目3成绩分析 题目描述 小蓝给学生们组织了一场考试卷面总分为 100 分每个学生的得分都是一个 0 到 100 的整数。 如果得分至少是 60 分则称为及格。如果得分至少为 85 分则称为优秀。 请计算及格率和优秀率用百分数表示百分号前的部分四舍五入保留整 数。 输入描述 输入的第一行包含一个整数 n (1≤n≤104)表示考试人数。 接下来 n 行每行包含一个 0 至 100 的整数表示一个学生的得分。 输出描述 输出两行每行一个百分数分别表示及格率和优秀率。百分号前的部分 四舍五入保留整数。 输入输出样例 示例 输入 7
80
92
56
74
88
100
0输出 71%
43%运行限制 最大运行时间1s最大运行内存: 256M代码
package 第十四届蓝桥杯三月真题刷题训练.day5;import java.io.*;/*** author yx* date 2023-03-08 9:08*/
public class 成绩统计 {static PrintWriter out new PrintWriter(System.out);static BufferedReader insnew BufferedReader(new InputStreamReader(System.in));static StreamTokenizer innew StreamTokenizer(ins);/*** 输入* in.nextToken()* int a (int)in.nval;** 输出* out.print();* out.flush();*/public static void main(String[] args) throws IOException {int jiGe0;int youXiu0;in.nextToken();int n(int) in.nval;for (int i 0; i n; i) {in.nextToken();int temp(int) in.nval;if(temp85){youXiu;}if(temp60){jiGe;}}System.out.println(Math.round(jiGe*100/(n*1.0))%);System.out.println(Math.round(youXiu*100/(n*1.0))%);}
}题目4最大和_dp质数筛 问题描述 小蓝在玩一个寻宝游戏, 游戏在一条笔直的道路上进行, 道路被分成了 n 个方格, 依次编号 1 至 n, 每个方格上都有一个宝物, 宝物的分值是一个整数 (包括正数、负数和零), 当进入一个方格时即获得方格中宝物的分值。小蓝可 以获得的总分值是他从方格中获得的分值之和。 小蓝开始时站在方格 1 上并获得了方格 1 上宝物的分值, 他要经过若干步 到达方格 n。 当小蓝站在方格 p 上时, 他可以选择跳到 p1 到 pD(n−p)这些方格 中的一个, 其中 D(1)1,D(x)(x1) 定义为 xx 的最小质因数。 给定每个方格中宝物的分值, 请问小蓝能获得的最大总分值是多少。 输入格式 输入的第一行包含一个正整数 n 。 第二行包含 n 个整数, 依次表示每个方格中宝物的分值。 输出格式 输出一行包含一个整数, 表示答案。 样例输入
51 -2 -1 3 5样例输出
8样例输出 最优的跳跃方案为: 1→3→4→51→3→4→5 。 评测用例规模与约定 对于 4040 的评测用例, 1≤n≤100。 对于 8080 的评测用例, 1≤n≤1000 对于所有评测用例, 1≤n≤10000 每个宝物的分值为绝对值不超过 1e5 的整数。 运行限制 最大运行时间1s最大运行内存: 256M代码
package 第十四届蓝桥杯三月真题刷题训练.day5;import java.io.*;
import java.util.Arrays;/*** author yx* date 2023-03-08 9:19*/
public class 最大和 {static PrintWriter out new PrintWriter(System.out);static BufferedReader insnew BufferedReader(new InputStreamReader(System.in));static StreamTokenizer innew StreamTokenizer(ins);/*** 输入* in.nextToken()* int a (int)in.nval;** 输出* out.print();* out.flush();*/public static void main(String[] args) throws IOException {in.nextToken();int n(int) in.nval;int[] numsnew int[n];int[] dpnew int[n];for (int i 0; i n; i) {in.nextToken();nums[i](int)in.nval;}Arrays.fill(dp,Integer.MIN_VALUE);//全部填充最小值因为题目中的得分可以是负数防止负数得分下不走的情况dp[0]nums[0];//第一个格子是必须要走的for (int i 0; i n; i) {for (int j 1; j D(n-(i1)); j) {/*1dp[i]nums[ij]表示从i这个格子开始选择走j步,新捡到的金币为nums[ij]2dp[ij],表示不走j步*/dp[ij]Math.max(dp[i]nums[ij],dp[ij]);}}out.println(dp[n-1]);out.flush();}static int D(int n){if(n1)return 1;if(n2)return 2;if(n3)return 3;if(isPrime(n))return n;for (int i 2; i*i n ; i) {if(n%i0isPrime(i)){return i;}}return n;}static boolean isPrime(int n){int temp(int) Math.sqrt(n);for (int i 2; i temp ; i) {if(n%i0){return false;}}return true;}
}