
蓝桥杯
za30312
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
封印之门 蓝桥杯模拟赛(一)
蒜头君被暗黑军团包围在一座岛上,所有通往近卫军团的路都有暗黑军团把手。幸运的是,小岛上有一扇上古之神打造的封印之门,可以通往近卫军团,传闻至今没有人能解除封印。封印之门上有一串文字,只包含小写字母,有 kk 种操作规则,每个规则可以把一个字符变换成另外一个字符。经过任意多次操作以后,最后如果能把封印之门上的文字变换成解开封印之门的文字,封印之门将会开启。蒜头君战斗力超强,但是不擅计算,请你...原创 2018-03-29 11:46:08 · 455 阅读 · 0 评论 -
代码填空:组合数字(DFS)
右侧代码是将 6 个整数按照任意顺序组合到一起, 计算能组合出的最大数字。 例如:4123,25,66 组合到一起就是 66412325。 请阅读程序补全代码,实现这个功能。分析: dfs 不可k++ #include <stdio.h>long long max(long long x, long long y) { return x > y ? x : y;}lon原创 2017-04-03 10:12:10 · 446 阅读 · 0 评论 -
代码填空:阶梯三角形
问题描述: 我们给出三角形的高度,通过函数在控制台上打印出一个三角形。右侧代码连续打印了几个大小不同三角形,最后形成了一个阶梯状的连续三角形。请仔细阅读代码,填写缺失代码,完成图形的打印。 请仔细阅读代码,填写缺失代码,完成图形的打印。分析: 通过另一个*号的输出结合图片观察#include <stdio.h>void print(int n) { for (int i = 0;原创 2017-04-03 10:08:31 · 583 阅读 · 0 评论 -
2017蓝桥杯:等差素数列
标题:等差素数列2,3,5,7,11,13,….是素数序列。 类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。 上边的数列公差为30,长度为6。2004年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。 这是数论领域一项惊人的成果!有这一理论为基础,请你借助手中的计算机,满怀信心地搜索:长度为10的等差素数列,其公差最小值是多少?注意:需要提原创 2017-04-10 14:20:51 · 4113 阅读 · 3 评论 -
2017蓝桥杯:承压计算
X星球的高科技实验室中整齐地堆放着某批珍贵金属原料。每块金属原料的外形、尺寸完全一致,但重量不同。 金属材料被严格地堆放成金字塔形。 7 5 8 7 8 8 9 2 7 2原创 2017-04-10 16:42:47 · 3267 阅读 · 0 评论 -
算法训练 最大最小公倍数
问题描述 已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。 输入格式 输入一个正整数N。 输出格式 输出一个整数,表示你找到的最小公倍数。 样例输入 9 样例输出 504 数据规模与约定 1 <= N <= 106。分析: 最小公倍数的最大应该为2基数1偶数 并且最好是最后面的数原创 2017-03-13 20:19:50 · 224 阅读 · 0 评论 -
古堡算法
福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式: ABCDE * ? = EDCBA 他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!” 华生:“我猜也是!” 于是,两人沉默了好久,还是没有算出合适的结果来。 请你利用计算机的优势,找到破解的答案。 把 ABCDE 所代表的数字写出来。 #in原创 2017-03-13 09:00:30 · 440 阅读 · 0 评论 -
微生物增殖
假设有两种微生物 X 和 Y X出生后每隔3分钟分裂一次(数目加倍), Y出生后每隔2分钟分裂一次(数目加倍)。 一个新出生的X,半分钟之后吃掉1个Y,并且,从此开始,每隔1分钟吃1个Y。 现在已知有新出生的 X=10, Y=89,求60分钟后Y的数目。 如果X=10,Y=90 呢? 本题的要求就是写出这两种初始条件下,60分钟后Y的数目。 题目的结果令你原创 2017-03-13 08:59:01 · 355 阅读 · 0 评论 -
算年龄
英国数学家德摩根出生于19世纪初叶(即18xx年)。 他年少时便很有才华。一次有人问他的年龄,他回答说: “到了x的平方那年,我刚好是x岁”。请你计算一下,德摩根到底出生在哪一年。 题中的年龄指的是周岁。请填写表示他出生年份的四位数字,不要填写任何多余内容。#include <bits/stdc++.h>using namespace std;int main(){ int原创 2017-04-07 08:40:37 · 436 阅读 · 0 评论 -
算法训练 区间k大数查询
问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。 输入格式 第一行包含一个数n,表示序列长度。 第二行包含n个正整数,表示给定的序列。 第三个包含一个正整数m,表示询问个数。 接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。 输出格式 总共输出m行,原创 2017-03-11 20:14:09 · 354 阅读 · 0 评论 -
蓝桥杯模拟赛:猜算式
你一定还记得小学学习过的乘法计算过程,比如:请你观察如下的乘法算式星号代表某位数字,注意这些星号中, 0~9中的每个数字都恰好用了2次。 (如因字体而产生对齐问题,请参看图p1.jpg)请写出这个式子最终计算的结果,就是那个5位数是多少?注意:只需要填写一个整数,不要填写任何多余的内容。比如说明文字。#include <iostream>using namespace std;int a[6原创 2017-04-04 09:47:38 · 355 阅读 · 0 评论 -
蓝桥杯模拟赛:字符串比较
我们需要一个新的字符串比较函数compare(s1, s2). 对这个函数要求是: 1. 它返回一个整数,表示比较的结果。 2. 结果为正值,则前一个串大,为负值,后一个串大,否则,相同。 3. 结果的绝对值表示:在第几个字母处发现了两个串不等。下面是代码实现。对题面的数据,结果为: -3 2 5仔细阅读源程序,填写划线位置缺少的代码。分析: 当发现t不等于0时可知两个串不等 通过原创 2017-04-04 09:50:16 · 484 阅读 · 0 评论 -
蓝桥杯模拟赛:奇怪的捐赠(dfs)
地产大亨Q先生临终的遗愿是:拿出100万元给X社区的居民抽奖,以稍慰藉心中愧疚。 麻烦的是,他有个很奇怪的要求:100万元必须被正好分成若干份(不能剩余)。每份必须是7的若干次方元。 比如:1元, 7元,49元,343元,…相同金额的份数不能超过5份。在满足上述要求的情况下,分成的份数越多越好!请你帮忙计算一下,最多可以分为多少份?注意:只需要填写一个整数,就是分成的份数,不要填写任何原创 2017-04-04 17:04:18 · 2434 阅读 · 0 评论 -
分巧克力
儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足:1. 形状是正方形,边长是整数 2. 大小相同 例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。当然小朋友们都希望得到的巧克力尽可能大,原创 2017-11-29 15:30:30 · 519 阅读 · 0 评论 -
2017蓝桥杯:k倍区间(前缀和)
标题: k倍区间给定一个长度为N的数列,A1, A2, … AN,如果其中一段连续的子序列Ai, Ai+1, … Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间。 你能求出数列中总共有多少个K倍区间吗? 输入第一行包含两个整数N和K。(1 <= N, K <= 100000) 以下N行每行包含一个整数Ai。(1 <= Ai <= 100000) 输出输出一个整数,原创 2017-04-08 17:19:31 · 10269 阅读 · 11 评论 -
蓝桥杯模拟赛:报数游戏(vector解决约瑟夫环)
题:报数游戏有 n (1#include <iostream>#include <vector>using namespace std;int main(){ int n, m; //n孩子数 m报数 cin >> n >> m; vector<int>vec(n); for(int i = 0; i < n; i++) { vec原创 2017-04-03 20:22:53 · 1383 阅读 · 0 评论 -
九宫格
将数字 1 …9 填入一个 3×3 的九宫格中, 使得格子中每一横行和的值全部相等,每一竖列和的值全部相等。 请你计算有多少种填数字的方案。分析: 用全排列函数 第一个if判断行 第二个if判断列 #include<bits/stdc++.h>using namespace std;int main(){ int a[9] = {1,2,3,4,5,6,原创 2017-04-03 10:03:00 · 733 阅读 · 0 评论 -
方程的解
问题描述: 给出方程组: 11x+13y+17z=2471 13x+17y+11z=2739 已知x,y,z均为正整数,请你计算x,y,z相加最小为多少#include<bits/stdc++.h>using namespace std;int main(){ int max = 10000; int a,b,c; for(a = 1; a < 1原创 2017-04-03 10:00:31 · 486 阅读 · 0 评论 -
方格填数
方格填数如下的10个格子 +–+–+–+ | | | | +–+–+–+–+ | | | | | +–+–+–+–+ | | | | +–+–+–+(如果显示有问题,也可以参看【图1.jpg】)填入0~9的数字。要求:连续的两个数字不能相邻。 (左右、上下、对角都算相邻)一共有多少种可能的填数方案?请填写表示方案数目的整数。 注意:你提交的应该是一个原创 2017-03-17 20:18:25 · 331 阅读 · 0 评论 -
生日蜡烛
生日蜡烛某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。分析: 暴力法using namespace std;int function(int i);int main() {原创 2017-03-17 20:07:38 · 273 阅读 · 0 评论 -
蓝桥杯模拟赛:滑动解锁
参考了这位大牛:http://blog.csdn.net/qq_36238595/article/details/63254554 题目:滑动解锁滑动解锁是智能手机一项常用的功能。你需要在3x3的点阵上,从任意一个点开始,反复移动到一个尚未经过的”相邻”的点。这些划过的点所组成的有向折线,如果与预设的折线在图案、方向上都一致,那么手机将解锁。所谓两个点“相邻”:当且仅当以这两个点为端点的线段上不存原创 2017-04-06 10:34:57 · 621 阅读 · 0 评论 -
补全等式(DFS,全排列)
下图中,每个方块代表 1…13 中的某一个数字,但不重复。 例如: 1×2+9×7=13×5 10×8+12×3=11×4 只要有任意一个方块代表的数字不同,就算两种不同的方案。 请你计算,一共有多少种不同的方案。方法一: DFS 速度快 方法二: 暴力全排列 速度慢 #include <bits/stdc++.h>using namespace std;bool visit原创 2017-04-03 10:31:52 · 652 阅读 · 0 评论 -
网友年龄
网友年龄某君新认识一网友。 当问及年龄时,他的网友说: “我的年龄是个2位数,我比儿子大27岁, 如果把我的年龄的两位数字交换位置,刚好就是我儿子的年龄”请你计算:网友的年龄一共有多少种可能情况?提示:30岁就是其中一种可能哦.请填写表示可能情况的种数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。#include <iostream>using namespace原创 2017-03-19 18:48:53 · 446 阅读 · 0 评论 -
抽签
抽签X星球要派出一个5人组成的观察团前往W星。 其中: A国最多可以派出4人。 B国最多可以派出2人。 C国最多可以派出2人。 ….那么最终派往W星的观察团会有多少种国别的不同组合呢?下面的程序解决了这个问题。 数组a[] 中既是每个国家可以派出的最多的名额。 程序执行结果为: DEFFF CEFFF CDFFF CDEFF CCFFF CCEFF CCDFF CCDE原创 2017-03-17 20:23:24 · 406 阅读 · 0 评论 -
基础练习 特殊的数字
问题描述 153是一个非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。编程求所有满足这种条件的三位十进制数。 输出格式 按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。 #include <stdio.h>int main(){ int a,b,c; for(a=1; a<10; a++原创 2016-12-05 09:43:01 · 273 阅读 · 0 评论 -
基础练习 杨辉三角形
问题描述 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。 它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。 下面给出了杨辉三角形的前4行: 1 1 1 1 2 1 1 3 3 1 给出原创 2016-12-04 22:03:22 · 289 阅读 · 0 评论 -
基础练习 01字串
问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这32种01串。 输入格式 本试题没有输入。 输出格式 输出32行,按从小到大的顺序每行一个长度为5的01串。 样例输出原创 2016-12-04 21:33:40 · 367 阅读 · 0 评论 -
基础练习 数列排序
问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200 输入格式 第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。 输出格式 输出一行,按从小到大的顺序输出排序后的数列。 样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9#includ原创 2016-12-03 21:36:47 · 518 阅读 · 0 评论 -
[基础训练]数列排序
问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200输入格式 第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式 输出一行,按从小到大的顺序输出排序后的数列。样例输入5 8 3 6 4 9样例输出3 4 6 8 9#include <stdio.h>int main() { int n,i,j;原创 2016-12-02 20:17:04 · 552 阅读 · 0 评论 -
[入门训练] 圆的面积
问题描述给定圆的半径r,求圆的面积。输入格式输入包含一个整数r,表示圆的半径。输出格式输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。说明:在本题中,输入是一个整数,但是输出是一个实数。对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误。实数输出的问题如果没有特别说明,原创 2016-12-02 20:13:11 · 426 阅读 · 0 评论 -
[入门练习]Fibonacci数列
问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余原创 2016-12-02 20:10:13 · 261 阅读 · 0 评论 -
acm 寻找素数对
#include <stdio.h>#include <windows.h>#define MAX 100bool function(int n);int main(){ int n,i = 0; char ch; int arr1[MAX],arr2[2*MAX]; /* 第一个数组保存输入,第二个数组保存输出*/ int low,high;原创 2016-12-11 17:07:50 · 459 阅读 · 0 评论 -
2014预赛第一题
2014预赛第一题啤酒每罐2.3元,饮料每罐1.9元。小明买了若干啤酒和饮料,一共花了82.3元。#include <stdio.h>void main(){ int a=0,b=0; //表示啤酒、饮料 for(b=0;;b++) { for(a=0;a<b;a++) { if(a*2.3+b*1.9==82.3)原创 2016-07-15 09:28:33 · 328 阅读 · 0 评论 -
基础练习 回文数
问题描述 1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。 输出格式 按从小到大的顺序输出满足条件的四位十进制数。int main(){ int a,b,c,d; for(a=1; a<10; a++) { for(b=0; b<10; b++) {原创 2016-12-05 09:47:49 · 402 阅读 · 0 评论 -
39台阶
//题目描述:// 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!// 站在台阶前,他突然又想着一个问题:// 如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右// 脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?#include <stdio.h>void function(原创 2016-11-22 22:37:55 · 315 阅读 · 0 评论 -
基础练习 特殊回文数
问题描述 123321是一个非常特殊的数,它从左边读和从右边读是一样的。 输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。 输入格式 输入一行,包含一个正整数n。 输出格式 按从小到大的顺序输出满足条件的整数,每个整数占一行。 样例输入 52 样例输出 899998 989989原创 2016-12-05 10:00:53 · 268 阅读 · 0 评论 -
凑算式
凑算式这个算式中A~I代表原创 2017-03-17 20:21:28 · 228 阅读 · 0 评论 -
交换瓶子
交换瓶子 有N个瓶子,编号 1 ~ N,放在架子上。 比如有5个瓶子: 2 1 3 5 4 要求每次拿起2个瓶子,交换它们的位置。 经过若干次后,使得瓶子的序号为: 1 2 3 4 5 对于这么简单的情况,显然,至少需要交换2次就可以复位。 如果瓶子更多呢?你可以通过编程来解决。 输入格式为两行: 第一行: 一个正整数N(N<10000), 表示瓶子的数目 第二行:N个正整数,原创 2017-03-17 20:12:29 · 425 阅读 · 0 评论 -
快速排序
快速排序排序在各种场合经常被用到。 快速排序是十分常用的高效率的算法。其思想是:先选一个“标尺”, 用它把整个队列过一遍筛子, 以保证:其左边的元素都不大于它,其右边的元素都不小于它。这样,排序问题就被分割为两个子区间。 再分别对子区间排序就可以了。下面的代码是一种实现,请分析并填写划线部分缺少的代码。分析: 如果对快速排序不够熟悉 可以使用输出数组的方法找到规律#include <st原创 2017-03-17 20:10:45 · 243 阅读 · 0 评论 -
四平方和
四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和。 如果把0包括进去,就正好可以表示为4个数的平方和。比如: 5 = 0^2 + 0^2 + 1^2 + 2^2 7 = 1^2 + 1^2 + 1^2 + 2^2 (^符号表示乘方的意思)对于一个给定的正整数,可能存在多种平方和的表示法。 要求你对4个数排序: 0 <= a <= b <= c <= d原创 2017-03-17 20:00:45 · 224 阅读 · 0 评论