- 博客(20)
- 收藏
- 关注
原创 01背包问题(Java)
接下来有 NN 行,每行两个整数 vi,wi,用空格隔开,分别表示第 ii 件物品的体积和价值。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 ii 件物品的体积是 vi,价值是 wi。输出一个整数,表示最大价值。
2022-12-27 15:51:30 800 1
原创 蓝桥杯-门牌制作(Java)
一、题目小蓝要为一条街的住户制作门牌号。这条街一共有2020位住户,门牌号从1到2020编号。小蓝制作门牌的方法是先制作0到9这几个数字字符,最后根据需要将字符粘贴到门牌上,例如门牌1017需要依次粘贴字符1、0、1、7,即需要1个字符0,2个字符1,1个字符7。请问要制作所有的1到2020号门牌,总共需要多少个字符2?二、代码import java.util.HashMap;import java.util.Set;public class Main { public s
2022-04-06 16:05:15 239
原创 数组中出现频率最高的元素(Java)
/*输出一个数组中出现频率最高的数 */import java.util.LinkedList;public class Main { static int first_value = 0;//第一个值 static int first_count =0;//计数 static int big_value=0;//次数最多的值 static int big_count=0;//最大计数 public static void f(int[] a){ .
2022-03-22 10:57:09 1446
原创 蓝桥杯-日期问题(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在1960年1月1日至2059年12月31日。令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。更加麻烦的是,年份也都省略了前两位,使得文献上的一个日期,存在很多可能的日期与其对应。 比如02/03/04,可能是2002年03月04日、2004年02月03日或2004年03月02日。 给出一.
2022-03-19 13:00:20 183
原创 冒泡排序数组(Java)
小到大public class Main { public static void sort(Comparable[] a){ for(int i=a.length-1;i>0;i--){ for(int j=0;j<i;j++){ //比较索引j和索引j+1处的值 if (greater(a[j],a[j+1])){ exch(a,j,j
2022-02-26 11:56:53 76
原创 斐波那契数列(Java)
记录一下,便于修改复制import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int ans=f(n); System.out.println(ans); }
2022-02-26 11:27:32 153
原创 蓝桥杯—正则问题(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 考虑一种简单的正则表达式: 只由 x ( ) | 组成的正则表达式。 小明想求出这个正则表达式能接受的最长字符串的长度。 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是: xxxxxx,长度是6。输入格式 ---- 一个由x()|组成的正则表达式。输入长度不超过100,保证合法。输出格式 ---- 这个正则表达式能接受的最长字符串的长度。 例如,输入格式 .
2022-02-18 10:57:28 622
原创 蓝桥杯—包子凑数(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 小明几乎每天早晨都会在一家包子铺吃早餐。他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子。每种蒸笼都有非常多笼,可以认为是无限笼。 每当有顾客想买X个包子,卖包子的大叔就会迅速选出若干笼包子来,使得这若干笼中恰好一共有X个包子。比如一共有3种蒸笼,分别能放3、4和5个包子。当顾客想买11个包子时,大叔就会选2笼3个的再加1笼5个的(也可能选出1笼3个的再加2笼4个的)。 当然有时包子大叔无论如何也凑不出顾客想.
2022-02-14 12:22:41 161
原创 蓝桥杯—分巧克力(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。 为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足: 1. 形状是正方形,边长是整数 2. 大小相同 例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。 当然小朋友们都希望得到的巧克力尽可能大,你能帮小.
2022-02-14 12:20:12 167
原创 蓝桥杯—打印十字图(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示(可参见图片) 对方同时也需要在电脑dos窗口中以字符的形式输出该标志,并能任意控制层数。 为了能准确比对空白的数量,程序要求对行中的空白以句点(.)代替。输入格式 一个正整数 n (n<30) 表示要求打印图形的层数输出格式 对应包围层数的该标志。 例如: 用户输入: 1 程序应该输出:(这里很难对齐哈,还是看上面的图吧
2022-02-12 13:52:58 266
原创 蓝桥杯—买不到的数目(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 小明开了一家糖果店。他别出心裁:把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖。 小朋友来买糖的时候,他就用这两种包装来组合。当然有些糖果数目是无法组合出来的,比如要买 10 颗糖。 你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。大于17的任何数字都可以用4和7组合出来。 本题的要求就是在已知两个包装的数量时,求最大不能组合出的数字。输入格式 两个正整数,表示每种包装中糖的颗数(都不
2022-02-12 13:45:08 459
原创 蓝桥杯—核桃的数量(Java)(最大公倍数)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是: 1. 各组的核桃数量必须相同 2. 各组内必须能平分核桃(当然是不能打碎的) 3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛) 程序从标准输入读入: a b c a,b,c都是正整数,表示每个组正在加班的人数,用空格分开(a,b,c<30) 程序输出: 一.
2022-02-12 13:43:20 77
原创 蓝桥杯—连号区间数(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 小明这些天一直在思考这样一个奇怪而有趣的问题: 在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是: 如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。 当N很小的时候,小明可以很快地算出答案,但是当N变大的时候,问题就不是那么简单了,现在小明需要你的帮助。输入格式 第一行是一个正整数N (1 <=
2022-02-12 13:40:47 148
原创 蓝桥杯—错误票据(Java)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 某涉密单位下发了某种票据,并要在年终全部收回。 每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。 你的任务是通过编程,找出断号的ID和重号的ID。 假设断号不可能发生在最大和最小号。 要求程序首先输入一个整数N(N<100)表示后面数据行数。 接着读入N行数据。 每行数.
2022-02-12 13:37:51 766 1
原创 蓝桥杯—大臣的旅费(JAVA)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 很久以前,T王国空前繁荣。为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。 为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。 J是T国重要大臣,他巡查于各大城市之间,体察民情。所以,从一个城市马不停蹄地到另一个城市成了J最常做的事情。他有一个钱袋,用于存放往来城
2022-02-10 10:44:42 437
原创 蓝桥杯—剪格子(JAVA)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 如图所示,3 x 3 的格子中填写了一些整数。 我们沿着图中的红色线剪开,得到两个部分,每个部分的数字和都是60。 本题的要求就是请你编程判定:对给定的m x n 的格子中的整数,是否可以分割为两个部分,使得这两个区域的数字和相等。 如果存在多种解答,请输出包含左上角格子的那个区域包含的格子的最小数目。 如果无法分割,则输出 0 程序输入输出格式要求: 程序先读入两个整数 m n 用空格分割 (m,n&l.
2022-02-10 10:41:06 234
原创 蓝桥杯—带分数(JAVA)
一、题目资源限制时间限制:1.0s 内存限制:256.0MB 100 可以表示为带分数的形式:100 = 3 + 69258 / 714 还可以表示为:100 = 82 + 3546 / 197 注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。 类似这样的带分数,100 有 11 种表示法。 题目要求: 从标准输入读入一个正整数N (N<1000*1000) 程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。 注意:不要求输.
2022-02-10 10:29:18 844 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人