
蓝桥杯试题
coding__girl
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
算法训练 操作格子
问题描述 有n个格子,从左到右放成一排,编号为1-n。共有m次操作,有3种操作类型:1.修改一个格子的权值,2.求连续一段格子权值和,3.求连续一段格子的最大值。对于每个2、3操作输出你所求出的结果。输入格式 第一行2个整数n,m。接下来一行n个整数表示n个格子的初始权值。接下来m行,每行3个整数p,x,y,p表示操作类型,p=1时表示修改格子x的权值为y,p=原创 2018-02-05 18:24:21 · 229 阅读 · 0 评论 -
算法训练 矩阵乘方
问题描述 给定一个矩阵A,一个非负整数b和一个正整数m,求A的b次方除m的余数。 其中一个nxn的矩阵除m的余数得到的仍是一个nxn的矩阵,这个矩阵的每一个元素是原矩阵对应位置上的数除m的余数。 要计算这个问题,可以将A连乘b次,每次都对m求余,但这种方法特别慢,当b较大时无法使用。下面给出一种较快的算法(用A^b表示A的b次方): 若b=0,则A^b%m=I%m。其中I表示原创 2017-08-19 11:17:04 · 423 阅读 · 0 评论 -
算法训练 字符删除
问题描述 编写一个程序,先输入一个字符串str(长度不超过20),再输入单独的一个字符ch,然后程序会把字符串str当中出现的所有的ch字符都删掉,从而得到一个新的字符串str2,然后把这个字符串打印出来。 输入格式:输入有两行,第一行是一个字符串(内部没有空格),第二行是一个字符。 输出格式:经过处理以后的字符串。 输入输出样例 样例输入 123-45-678 -原创 2017-08-12 10:56:43 · 406 阅读 · 0 评论 -
算法训练 s01串
问题描述 s01串初始为”0” 按以下方式变换 0变1,1变01 输入格式 1个整数(0~19) 输出格式 n次变换后s01串 样例输入 3 样例输出 101 数据规模和约定 0~19思路: 循环n次,将‘0’变为‘1’,将‘1’前加一个‘0’#include <iostream>#include<string>using namespace原创 2017-07-27 10:40:15 · 292 阅读 · 0 评论 -
算法训练 反置数
问题描述 一个整数的“反置数”指的是把该整数的每一位数字的顺序颠倒过来所得到的另一个整数。如果一个整数的末尾是以0结尾,那么在它的反置数当中,这些0就被省略掉了。比如说,1245的反置数是5421,而1200的反置数是21。请编写一个程序,输入两个整数,然后计算这两个整数的反置数之和sum,然后再把sum的反置数打印出来。要求:由于在本题中需要多次去计算一个整数的反置数,因此必须把这部分代码抽原创 2017-08-11 11:47:59 · 335 阅读 · 0 评论 -
算法训练 字符串变换
问题描述 相信经过这个学期的编程训练,大家对于字符串的操作已经掌握的相当熟练了。今天,徐老师想测试一下大家对于字符串操作的掌握情况。徐老师自己定义了1,2,3,4,5这5个参数分别指代不同的5种字符串操作,你需要根据传入的参数,按照徐老师的规定,对输入字符串进行格式转化。 徐老师指定的操作如下: 1 表示全部转化为大写字母输出,如abC 变成 ABC 2 表示全部转换为小写字原创 2017-07-26 11:03:46 · 360 阅读 · 0 评论 -
算法训练 4-1打印下述图形
#include <iostream>using namespace std;int main(){ int n,i,k,j; cin>>n; for(i=0;i<n;i++) { for(k=0;k<n-i-1;k++) cout<<" "; for(j=0;j<2*i+1;j++)原创 2017-07-26 10:23:08 · 297 阅读 · 0 评论 -
算法训练 5-2求指数
问题描述 已知n和m,打印n^1,n^2,…,n^m。要求用静态变量实现。n^m表示n的m次方。已知n和m,打印n^1,n^2,…,n^m。要求用静态变量实现。n^m表示n的m次方。(每行显示5个数,每个数宽为12,右对齐) 样例输入 一个满足题目要求的输入范例。 例: 3 8 样例输出 与上面的样例输入对应的输出。 例:数据规模和约定 输入数据中每一个数的范围。 例原创 2017-07-26 10:08:25 · 597 阅读 · 0 评论 -
算法训练 6-2递归求二进制表示位数
问题描述 给定一个十进制整数,返回其对应的二进制数的位数。例如,输入十进制数9,其对应的二进制数是1001,因此位数是4。 样例输入 一个满足题目要求的输入范例。 9 样例输出 与上面的样例输入对应的输出。数据规模和约定 输入数据中每一个数的范围。 例:输入在int表示范围内。#include <iostream>using namespace std;int ma原创 2017-07-26 09:52:16 · 399 阅读 · 0 评论 -
算法训练 8-2求完数
问题描述 如果一个自然数的所有小于自身的因子之和等于该数,则称为完数。设计算法,打印1-9999之间的所有完数。 数据规模和约定 1-9999#include <iostream>using namespace std;int main(){ int i,k,sum; for(i=1;i<=9999;i++) { sum=0;原创 2017-07-26 09:26:57 · 463 阅读 · 0 评论 -
算法训练 阶乘
问题描述 一个整数n的阶乘可以写成n!,它表示从1到n这n个整数的乘积。阶乘的增长速度非常快,例如,13!就已经比较大了,已经无法存放在一个整型变量中;而35!就更大了,它已经无法存放在一个浮点型变量中。因此,当n比较大时,去计算n!是非常困难的。幸运的是,在本题中,我们的任务不是去计算n!,而是去计算n!最右边的那个非0的数字是多少。例如,5! = 1*2*3*4*5 = 120,因此5!最原创 2017-08-12 12:39:41 · 1184 阅读 · 0 评论 -
算法训练 输出米字形
根据输入的正整数n (1 米字形由一个(2n-1)*(2n-1)的矩阵组成,矩阵包含从大写A开始的n个字母 例如:n=3时,包含A,B,C;n=4时,包含A,B,C,D。 矩阵的正中间为n个字母中字典序最大的那个,从这个字母开始,沿着西北、正北、东北、正西、正东、西南、正南、东南八个方向各有一条由大写字母组成的直线。并且直线上的字母按字典序依次减小,直到大写字母A。 矩阵的其它位原创 2017-08-13 11:51:26 · 732 阅读 · 0 评论 -
算法训练 猴子分苹果
问题描述 秋天到了,n只猴子采摘了一大堆苹果放到山洞里,约定第二天平分。这些猴子很崇拜猴王孙悟空,所以都想给他留一些苹果。第一只猴子悄悄来到山洞,把苹果平均分成n份,把剩下的m个苹果吃了,然后藏起来一份,最后把剩下的苹果重新合在一起。这些猴子依次悄悄来到山洞,都做同样的操作,恰好每次都剩下了m个苹果。第二天,这些猴子来到山洞,把剩下的苹果分成n分,巧了,还是剩下了m个。问,原来这些猴子至少采了原创 2017-07-29 11:16:51 · 385 阅读 · 0 评论 -
算法训练 最短路
问题描述 给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环)。请你计算从1号点到其他点的最短路(顶点从1到n编号)。输入格式 第一行两个整数n, m。接下来的m行,每行有三个整数u, v, l,表示u到v有一条长度为l的边。输出格式 共n-1行,第i行表示1号点到i+1号点的最短路。 样例输入 3 3 1 2 -1 2 3 -1 3 1 2 样例原创 2018-01-18 09:39:04 · 603 阅读 · 1 评论 -
算法训练 安慰奶牛
问题描述 Farmer John变得非常懒,他不想再继续维护供奶牛之间供通行的道路。道路被用来连接N个牧场,牧场被连续地编号为1到N。每一个牧场都是一个奶牛的家。FJ计划除去P条道路中尽可能多的道路,但是还要保持牧场之间 的连通性。你首先要决定那些道路是需要保留的N-1条道路。第j条双向道路连接了牧场Sj和Ej(1 输入格式 第1行包含两个整数N和P。接下来N行,每行包含一个整数Ci。原创 2018-01-16 14:23:43 · 222 阅读 · 0 评论 -
算法训练 数组查找及替换
问题描述 给定某整数数组和某一整数b。要求删除数组中可以被b整除的所有元素,同时将该数组各元素按从小到大排序。如果数组元素数值在A到Z的ASCII之间,替换为对应字母。元素个数不超过100,b在1至100之间。 输入格式 第一行为数组元素个数和整数b 第二行为数组各个元素 输出格式 按照要求输出 样例输入 7 2 77 11 66 22 44 33 55样例输出11原创 2017-08-23 12:13:28 · 733 阅读 · 0 评论 -
算法训练 简单加法(基本型)
问题描述 首先给出简单加法算式的定义: 如果有一个算式(i)+(i+1)+(i+2),(i>=0),在计算的过程中,没有任何一个数位出现了进位,则称其为简单的加法算式。 例如:i=3时,3+4+5=12,有一个进位,因此3+4+5不是一个简单的加法算式;又如i=112时,112+113+114=339,没有在任意数位上产生进位,故112+113+114是一个简单的加法算式。 问题原创 2017-08-21 19:08:30 · 426 阅读 · 0 评论 -
矩阵乘法
问题描述 给定一个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个整数,原创 2017-07-25 16:40:39 · 229 阅读 · 0 评论 -
算法训练 快速排序
问题描述 快速排序是最经常使用的一种排序方式,对于给定的n个数组成的一个数组,请使用快速排序对其进行排序。 现给定一序列,请用快速排序将其按升序排序并输出。 输入格式 第一行一个数N。 第2~N+1行每行一个数,表示给定序列。 输出格式 共N行,每行一个数,表示所求序列。 样例输入 5 1 4 2 3 4 样例输出 1 2 3 4 4 数原创 2017-08-21 18:44:26 · 849 阅读 · 1 评论 -
算法训练 字符串逆序
输入一个字符串,长度在100以内,按相反次序输出其中的所有字符。 样例输入 tsinghua 样例输出 auhgnist简单题,不知道有没有倒序输出的函数#include <iostream>#include<string>using namespace std;int main(){ string s; int i,l; cin>>s; l=s.l原创 2017-08-14 11:56:53 · 295 阅读 · 0 评论 -
算法训练 筛选号码
问题描述 有n个人围成一圈,顺序排号(编号为1到n)。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子。从下一个人开始继续报数,直到剩下最后一个人,游戏结束。 问最后留下的是原来第几号的那位。 举个例子,8个人围成一圈: 1 2 3 4 5 6 7 8 第1次报数之后,3退出,剩下: 1 2 4 5 6 7 8 (现在从4开始报数) 第2次报数之后,原创 2017-08-14 11:37:03 · 564 阅读 · 0 评论 -
算法训练 寂寞的数
问题描述 道德经曰:一生二,二生三,三生万物。 对于任意正整数n,我们定义d(n)的值为为n加上组成n的各个数字的和。例如,d(23)=23+2+3=28, d(1481)=1481+1+4+8+1=1495。 因此,给定了任意一个n作为起点,你可以构造如下一个递增序列:n,d(n),d(d(n)),d(d(d(n)))….例如,从33开始的递增序列为: 33, 39, 51原创 2017-07-29 11:59:48 · 346 阅读 · 0 评论 -
时间转换
问题描述 给定一个以秒为单位的时间t,要求用“H:M:S”的格式来表示这个时间。H表示时间,M表示分钟,而S表示秒,它们都是整数且没有前导的“0”。例如,若t=0,则应输出是“0:0:0”;若t=3661,则输出“1:1:1”。 输入格式 输入只有一行,是一个整数t(0<=t<=86399)。 输出格式 输出只有一行,是以“H:M:S”的格式所表示的时间,不包括引号。 样例输原创 2017-07-25 17:20:45 · 423 阅读 · 0 评论 -
分解质因数
问题描述 求出区间[a,b]中所有整数的质因数分解。 输入格式 输入两个整数a,b。 输出格式 每行输出一个数的分解,形如k=a1*a2*a3…(a1<=a2<=a3…,k也是从小到大的)(具体可看样例) 样例输入 3 10 样例输出 3=3 4=2*2 5=5 6=2*3 7=7 8=2*2*2 9=3*3 10=2*5数据规模和约定 2<=a<=原创 2017-07-25 17:16:22 · 306 阅读 · 0 评论 -
算法训练 暗恋
问题描述 同在一个高中,他却不敢去找她,虽然在别人看来,那是再简单不过的事。暗恋,是他唯一能做的事。他只能在每天课间操的时候,望望她的位置,看看她倾心的动作,就够了。操场上的彩砖啊,你们的位置,就是他们能够站立的地方,他俩的关系就像砖与砖之间一样固定,无法动摇。还记得当初铺砖的工人,将整个操场按正方形铺砖(整个操场可视为R行C列的矩阵,矩阵的每个元素为一块正方形砖块),正方形砖块有两种,一种为原创 2017-08-07 17:44:57 · 356 阅读 · 0 评论 -
Huffuman树
问题描述 Huffman树在编码中有着广泛的应用。在这里,我们只关心Huffman树的构造过程。 给出一列数{pi}={p0, p1, …, pn-1},用这列数构造Huffman树的过程如下: 1. 找到{pi}中最小的两个数,设为pa和pb,将pa和pb从{pi}中删除掉,然后将它们的和加入到{pi}中。这个过程的费用记为pa + pb。 2. 重复步骤1,直到{pi}中原创 2017-07-17 10:27:19 · 195 阅读 · 0 评论 -
从八皇后问题到2n皇后问题
八皇后问题在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法 (方法:递归+回溯)#include <iostream>using namespace std;int queen[9];//表示每一行皇后的位置,如:queen[2]=4,表示第2列第4行有一个皇后int Count = 0;//记录解的个数int ca原创 2017-07-18 11:37:11 · 282 阅读 · 0 评论 -
芯片测试
问题描述 有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。 每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。 给出所有芯片的测试结果,问哪些芯片是好芯片。 输入格式 输入数据第一行为一个整数n,表示芯片个数。 第二行到第n+1原创 2017-07-21 17:24:45 · 339 阅读 · 0 评论 -
龟兔赛跑预测
问题描述 话说这个世界上有各种各样的兔子和乌龟,但是研究发现,所有的兔子和乌龟都有一个共同的特点——喜欢赛跑。于是世界上各个角落都不断在发生着乌龟和兔子的比赛,小华对此很感兴趣,于是决定研究不同兔子和乌龟的赛跑。他发现,兔子虽然跑比乌龟快,但它们有众所周知的毛病——骄傲且懒惰,于是在与乌龟的比赛中,一旦任一秒结束后兔子发现自己领先t米或以上,它们就会停下来休息s秒。对于不同的兔子,t,s的数值原创 2017-07-21 11:29:18 · 313 阅读 · 0 评论 -
算法训练 友好数
问题描述 有两个整数,如果每个整数的约数和(除了它本身以外)等于对方,我们就称这对数是友好的。例如: 9的约数和有:1+3=4 4的约数和有:1+2=3 所以9和4不是友好的。 220的约数和有:1 2 4 5 10 11 20 22 44 55 110=284 284的约数和有:1 2 4 71 142=220 所以220和284是友好的。 编写程序原创 2017-07-30 11:56:10 · 290 阅读 · 0 评论 -
算法训练 连续正整数的和
问题描述 78这个数可以表示为连续正整数的和,1+2+3,18+19+20+21,25+26+27。 输入一个正整数 n(<=10000) 输出 m 行(n有m种表示法),每行是两个正整数a,b,表示a+(a+1)+…+b=n。 对于多种表示法,a小的方案先输出。 样例输入 78 样例输出 1 12 18 21 25 27#include <iostream>u原创 2017-07-30 11:42:20 · 536 阅读 · 0 评论 -
高精度加法
问题描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把原创 2017-07-14 12:21:56 · 222 阅读 · 0 评论 -
16进制转为8进制
问题描述 给定n个十六进制正整数,输出它们对应的八进制数。输入格式 输入的第一行为一个正整数n (1<=n<=10)。 接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式 输出n行,每行为输入对应的八进制正整数。 【注意】 输入的十六进制数不会有前导0,比如012A。 输出的八进制转载 2017-07-13 13:36:10 · 3424 阅读 · 0 评论 -
算法训练 数的统计
问题描述 在一个有限的正整数序列中,有些数会多次重复出现在这个序列中。 如序列:3,1,2,1,5,1,2。其中1就出现3次,2出现2次,3出现1 次,5出现1次。 你的任务是对于给定的正整数序列,从小到大依次输出序列中出现的数及出现的次数。 输入格式 第一行正整数n,表示给定序列中正整数的个数。 第二行是n 个用空格隔开的正整数x,代表给定的序列。 输出格式原创 2017-08-07 11:29:59 · 321 阅读 · 0 评论 -
算法训练 明明的随机数
问题描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。 输入格式 输入有2行,第1行为1个正整数,表示所生成的随机数的个数原创 2017-08-07 18:05:18 · 199 阅读 · 0 评论 -
报时助手
问题描述 给定当前的时间,请用英文的读法将它读出来。 时间用时h和分m表示,在英文的读法中,读一个时间的方法是: 如果m为0,则将时读出来,然后加上“o’clock”,如3:00读作“three o’clock”。 如果m不为0,则将时读出来,然后将分读出来,如5:30读作“five thirty”。 时和分的读法使用的是英文数字的读法,其中0~20读作: 0:z原创 2017-07-19 17:01:24 · 271 阅读 · 0 评论 -
算法训练 新生舞会
问题描述 新生舞会开始了。n名新生每人有三个属性:姓名、学号、性别。其中,姓名用长度不超过20的仅由大小写字母构成的字符串表示,学号用长度不超过10的仅由数字构成的字符串表示,性别用一个大写字符‘F’或‘M’表示。任意两人的姓名、学号均互不相同。换言之,每个人可被其姓名或学号唯一确定。给出m对两人的信息(姓名或学号),判断他们是否能共舞。两人能共舞的充要条件为两人性别相异。输入 第一行一原创 2017-08-09 16:29:10 · 645 阅读 · 0 评论 -
完美的代价
问题描述 回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。 交换的定义是:交换两个相邻的字符 例如mamad 第一次交换 ad : mamda 第二次交换 md : madma 第三次交换 ma : madam (回文!完美!) 输入格原创 2017-07-25 12:04:31 · 222 阅读 · 0 评论 -
算法训练 阿尔法乘积
问题描述 计算一个整数的阿尔法乘积。对于一个整数x来说,它的阿尔法乘积是这样来计算的:如果x是一个个位数,那么它的阿尔法乘积就是它本身;否则的话,x的阿尔法乘积就等于它的各位非0的数字相乘所得到的那个整数的阿尔法乘积。例如:4018224312的阿尔法乘积等于8,它是按照以下的步骤来计算的: 4018224312 → 4*1*8*2*2*4*3*1*2 → 3072 → 3*7*2 →原创 2017-08-09 10:59:43 · 970 阅读 · 0 评论 -
数的读法
问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿。 比如说,在对学生讲解第1234567009号位置上的碱基时,光看着数字是很难准确的念出来的。 所以,他迫切地需要一个系统,然后当他输入12 3456 7009时,会给出相应的念法: 十二亿三千四百五十六万七千零九原创 2017-07-24 19:07:38 · 454 阅读 · 0 评论