
蓝桥杯C++训练系统
practical_sharp
这个作者很懒,什么都没留下…
展开
-
蓝桥杯省赛训练营——常用STL
动态数组using namespace std;#include<vector>vector<T>vec;//C++中直接构造一个动态数组的方法用动态数组存储自定义类型struct Student { string name; // 名字 int age; // 年龄};int main() { vector<S...原创 2020-03-08 21:46:02 · 1889 阅读 · 0 评论 -
蓝桥杯省赛训练营——枚举算法
枚举算法,就是根据所提出的问题,列出该问题所有可能的解,并在列出解的过程中逐一的检查这个解是否是符合条件的可行解。如果是就采纳这个解,如果不是就判断下一个。枚举算法的思想比较直观,容易理解。但是要逐一的检查所有可能的解,所以效率比较低。能够使用枚举算法的题目往往是最简单的一类题目。这类题目具有一下特点:解枚举范围是有穷的检查条件是确定的一个简单的例子题目来源2016第七届蓝桥杯...原创 2020-01-15 13:02:33 · 1158 阅读 · 1 评论 -
蓝桥杯——进制转换练习
基础练习 十进制转十六进制问题描述十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。 给出一个非负整数,将它表示成十六进制的形式。...原创 2020-01-14 22:29:29 · 525 阅读 · 0 评论 -
为什么memset不能将数组元素初始化为1?
今天笔者发现了一个很严肃的问题memset函数不能给数组赋值为1查阅资料后发现,memset函数是逐个字节填充,计算机中为补码,memset函数只能填充为全0或者全1。说明,memset函数只能给数组赋值全0,或者全-1.#include<string.h>int main(){ int a[101]; memset(a,1,sizeof(a)); for(int i=...原创 2020-01-12 15:48:01 · 1753 阅读 · 0 评论 -
C++排序与sort
对于一个连续存储空间的数组进行排序,我们可以使用C++中提供 的sort。C++中已经为我们写好了sort函数,需要调用是我们要引入一个头文件#inlcide<algorithm>要提醒的是sort可以排序任何类型的元素,包括自行定义的结构体。sort用例int main(){ int arr[] = {0,-3,7,9,1,4}; //对arr[0]到arr[5]进...原创 2020-01-11 20:24:02 · 527 阅读 · 1 评论 -
蓝桥杯省赛训练营——日期的计算
日期的计算经常会遇到别人问你几月几号是星期几的情况,如何不查日历,直接用程序算出来呢?一种最简单的方法是,记住很久以前的某一天是星期几,比如公元 1 年 1 月 1 日是星期一。然后一天一天模拟,算出日期是星期几。这种方法容易理解,但是实现起来代码可能比较长。除此之外,有一个公式可以快速地根据日期计算这一天是星期几,这被称为 蔡基姆拉尔森计算公式假设星期为 w, 年份为 y, 月份为 m, 日...原创 2020-01-08 23:13:00 · 1217 阅读 · 0 评论 -
算法训练 审美课
问题描述《审美的历程》课上有n位学生,帅老师展示了m幅画,其中有些是梵高的作品,另外的都出自五岁小朋友之手。老师请同学们分辨哪些画的作者是梵高,但是老师自己并没有答案,因为这些画看上去都像是小朋友画的……老师只想知道,有多少对同学给出的答案完全相反,这样他就可以用这个数据去揭穿披着皇帝新衣的抽象艺术了(支持帅老师_)。 答案完全相反是指对每一幅画的判断都相反。输入格式第一行两个数n和m,...原创 2020-01-07 12:50:26 · 158 阅读 · 0 评论 -
算法训练 乘积最大
问题描述今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目:设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大。同时,为了帮助选手...原创 2020-01-06 22:06:28 · 378 阅读 · 0 评论 -
算法训练 乘积最大
问题描述今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目:设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大。同时,为了帮助选手...原创 2019-11-06 21:53:26 · 1381 阅读 · 0 评论 -
导弹拦截问题
问题描述某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:**虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。**某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数),计算这套系统最多能拦截多少导弹,如果要拦...原创 2019-11-06 20:36:17 · 4976 阅读 · 0 评论 -
算法训练 数的划分
问题描述将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序)。 例如:n=7,k=3,下面三种分法被认为是相同的。 1,1,5; 1,5,1; 5,1,1; 问有多少种不同的分法。输入格式n,k输出格式一个整数,即不同的分法样例输入7 3样例输出4 {四种分法为:1,1,5;1,2,4;1,3,3;2,2,3;}数据规模和约定6<n<=20...原创 2019-10-25 00:35:52 · 355 阅读 · 0 评论 -
算法训练 装箱问题
问题描述有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。 要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入格式第一行为一个整数,表示箱子容量; 第二行为一个整数,表示有n个物品; 接下来n行,每行一个整数表示这n个物品的各自体积。输出格式一个整数,表示箱子剩余空间。 样例输入 24...原创 2019-10-24 23:42:47 · 723 阅读 · 0 评论 -
算法训练 集合运算
问题描述给出两个整数集合A、B,求出他们的交集、并集以及B在A中的余集。输入格式第一行为一个整数n,表示集合A中的元素个数。 第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素。 第三行为一个整数m,表示集合B中的元素个数。 第四行有m个互不相同的用空格隔开的整数,表示集合B中的元素。 集合中的所有元素均为int范围内的整数,n、m<=1000。输出格式第一...原创 2019-10-23 23:37:49 · 1542 阅读 · 0 评论 -
基础练习 高精度加法
问题描述输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。算法描述由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位...原创 2019-10-22 16:23:53 · 418 阅读 · 0 评论 -
算法训练 P0505
问题描述一个整数n的阶乘可以写成n!,它表示从1到n这n个整数的乘积。阶乘的增长速度非常快,例如,13!就已经比较大了,已经无法存放在一个整型变量中;而35!就更大了,它已经无法存放在一个浮点型变量中。因此,当n比较大时,去计算n!是非常困难的。幸运的是,在本题中,我们的任务不是去计算n!,而是去计算n!最右边的那个非0的数字是多少。例如,5!=12345=120,因此5!最右边的那个非0的数字...原创 2019-10-20 14:45:08 · 179 阅读 · 0 评论 -
第十届蓝桥杯C++省赛A组
试题 A: 平方和#(暴力)本题总分:5 分【问题描述】小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574,平方和是 14362。注意,平方和是指将每个数分别平方后求和。请问,在 1 到 2019 中,所有这样的数的平方和是多少?【答案提交】这是一道结果填空的题,你只需要算出结...原创 2019-10-20 14:13:01 · 265 阅读 · 0 评论 -
算法训练 最小乘积(基本型)
参考博文递归求解N的全排列问题问题描述给两组数,各n个。 请调整每组数的排列顺序,使得两组数据相同下标元素对应相乘,然后相加的和最小。要求程序输出这个最小值。 例如两组数分别为:1 3 -5和-2 4 1那么对应乘积取和的最小值应为: (-5) * 4 + 3 * (-2) + 1 * 1 = -25输入格式第一个行一个数T表示数据组数。后面每组数据,先读入一个n,接下来两...原创 2019-10-16 00:03:07 · 676 阅读 · 0 评论 -
算法训练 出现次数最多的整数
问题描述编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20。然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来。如果有两个元素值出现的次数相同,即并列第一,那么只打印比较小的那个值。输入格式:第一行是一个整数N,N £ 20;接下来有N行,每一行表示一个整数,并且按照从小到大的顺序排列。 输出格式:输出只有...原创 2019-10-15 00:06:06 · 264 阅读 · 0 评论 -
算法训练 K好数
问题描述如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。输入格式输入包含两个正整数,K和L。输出格式输出一个整数,表示答案对1000000007取模后的值。...原创 2019-10-14 23:12:55 · 267 阅读 · 0 评论 -
基础练习 分解质因数
问题描述求出区间[a,b]中所有整数的质因数分解。输入格式输入两个整数a,b。输出格式每行输出一个数的分解,形如k=a1a2a3…(a1<=a2<=a3…,k也是从小到大的)(具体可看样例)样例输入3 10样例输出3=34=225=56=237=78=2229=3310=25提示先筛出所有素数,然后再分解。数据规模和约定2<=a<=b...原创 2019-10-13 00:16:20 · 534 阅读 · 0 评论 -
基础练习 完美的代价
问题描述回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。 交换的定义是:交换两个相邻的字符 例如mamad 第一次交换 ad : mamda 第二次交换 md : madma 第三次交换 ma : madam (回文!完美!)输入格式第一行是一个...原创 2019-10-12 00:12:17 · 917 阅读 · 1 评论 -
基础练习 矩阵乘法
问题描述给定一个N阶矩阵A,输出A的M次幂(M是非负整数) 例如: A = 1 2 3 4 A的2次幂 7 10 15 22输入格式第一行是一个正整数N、M(1<=N<=30, 0<=M<=5),表示矩阵A的阶数和要求的幂数 接下来N行,每行N个绝对值不超过10的非负整数,描述矩阵A的值输出格式输出共N行,每行N个整数,表示A的M次...原创 2019-10-12 00:02:03 · 445 阅读 · 0 评论 -
基础练习 Huffuman树
问题描述Huffman树在编码中有着广泛的应用。在这里,我们只关心Huffman树的构造过程。 给出一列数{pi}={p0, p1, …, pn-1},用这列数构造Huffman树的过程如下: 1. 找到{pi}中最小的两个数,设为pa和pb,将pa和pb从{pi}中删除掉,然后将它们的和加入到{pi}中。这个过程的费用记为pa + pb。 2. 重复步骤1,直到{pi}中只剩下一个...原创 2019-10-11 22:39:25 · 333 阅读 · 0 评论 -
蓝桥杯试题盾神与积木游戏之论减少时间复杂度的重要性
问题描述最近的m天盾神都去幼儿园陪小朋友们玩去了~ 每个小朋友都拿到了一些积木,他们各自需要不同数量的积木来拼一些他们想要的东西。但是有的小朋友拿得多,有的小朋友拿得少,有些小朋友需要拿到其他小朋友的积木才能完成他的大作。如果某个小朋友完成了他的作品,那么他就会把自己的作品推倒,而无私地把他的所有积木都奉献出来;但是,如果他还没有完成自己的作品,他是不会把积木让出去的哟~ 盾神看到这么和...原创 2019-10-07 22:08:38 · 271 阅读 · 0 评论 -
回文数字
问题描述观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的。这样的数字叫做:回文数字。本题要求你找到一些5位或6位的十进制数字。满足如下要求:该数字的各个数位之和等于输入的整数。输入格式一个正整数 n (10<n<100), 表示要求满足的数位和。输出格式若干行,每行包含一个满足要求的5位或6位整数。数字按从小到大的顺序排列。...原创 2019-10-07 20:32:49 · 387 阅读 · 0 评论 -
2019年9月CCF CSP 认证题解第一题
小明种苹果(apple)【题目描述】小明在他的果园里种了一些苹果树。为了保证苹果的品质,在种植过程中要进行若干轮疏果操作,也就是提前从树上把不好的苹果去掉。第一轮疏果操作开始前,小明记录了每棵树上苹果的个数。每轮疏果操作时,小明都记录了从每棵树上去掉的苹果个数。在最后一轮疏果操作结束后,请帮助小明统计相关的信息。【输入格式】从标准输入读入数据。第 1 行包含两个正整数 N 和 M,分别表...原创 2019-09-20 20:37:34 · 1803 阅读 · 4 评论 -
2019年3月CCF CSP 认证题解第一题
第一题:201903-1[题目背景]在数据分析中,最小值最大值以及中位数是常用的统计信息。[题目描述]老师给了你n个整数组成的测量数据,保证有序(可能为升序或降序),可能存在重复的数据。请统计出这组测量效据中的最大值、中位数以及最小值,并按照从大到小的顺序输出这三个数。[输入格式]从标准输入读入数据。第一行输入-一个整数n,在第二行中存在n个有序的整数,表示测量数据,可能为升序或降序...原创 2019-06-05 19:01:45 · 2271 阅读 · 3 评论 -
蓝桥杯试题集基础练习之数组排序
数组排序问题描述给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200输入格式 第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式 输出一行,按从小到大的顺序输出排序后的数列。样例输入58 3 6 4 9样例输出3 4 6 8 9C++源代码#include <iostream&g...原创 2018-11-12 20:49:26 · 621 阅读 · 0 评论