蓝桥杯
文章平均质量分 56
星空皓月
工欲善其事,必先利其器。
展开
-
2022年蓝桥杯真题-积木画【最简单的矩阵快速幂】
同时, 小明有一块面积大小为 2×N 的画布, 画布由 2×N 个1×1 区域构成。小明需要用以上两种积木将画布拼满, 他想知道总共有多少种不同的方式?积木可以任意旋转, 且画布的方向固定。输出一个整数表示答案。由于答案可能很大,所以输出其对 1000000007 取模后的值。输入一个整数 N,表示画布大小。原创 2023-03-29 09:12:20 · 315 阅读 · 1 评论 -
【蓝桥杯2022初赛题解】Python
筛选出所有的质因素,将396分解成2 * 2 * 3 * 3 * 11。给定正整数n,请问有多少个质数是n的约数。原创 2023-03-15 10:54:51 · 1730 阅读 · 0 评论 -
蓝桥杯第九届 - G:螺旋折线【思维】
题意如图所示的螺旋折线经过平面上所有整点恰好一次。对于整数点(X, Y),我们定义它到原点的距离 dis(X, Y) 是从原点到 (X, Y) 的螺旋折线段的长度。例如:dis(0, 1) = 3,dis(-2, -1) = 9给出整数点坐标(X, Y),你能计算出 dis(X, Y) 吗?InputX和Y对于40%的数据,-1000 <= X, Y <= 1000对于70%的数据,-100000 <= X, Y <= 100000对于100%的数据, -1000原创 2020-09-13 18:12:05 · 172 阅读 · 0 评论 -
蓝桥杯第八届I题:分巧克力+二分查找
题目描述儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足:形状是正方形,边长是整数大小相同例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。当然小朋友们都希望得到的巧克力尽可能大...原创 2020-03-17 11:53:07 · 631 阅读 · 0 评论 -
蓝桥杯第七届I题:交换瓶子
题目描述有N个瓶子,编号 1 ~ N,放在架子上。比如有5个瓶子:2 1 3 5 4要求每次拿起2个瓶子,交换它们的位置。经过若干次后,使得瓶子的序号为:1 2 3 4 5对于这么简单的情况,显然,至少需要交换2次就可以复位。如果瓶子更多呢?你可以通过编程来解决。输入输入格式为两行:第一行: 一个正整数N(N<10000), 表示瓶子的数目第二行:N个正整数,用空格分...原创 2020-03-15 11:58:07 · 261 阅读 · 0 评论 -
蓝桥杯第七届H题:四方求和+map;
题目描述四平方和定理,又称为拉格朗日定理:每个正整数都可以表示为至多4个正整数的平方和。如果把0包括进去,就正好可以表示为4个数的平方和。比如:5 = 0^2 + 0^2 + 1^2 + 2^27 = 1^2 + 1^2 + 1^2 + 2^2(^符号表示乘方的意思)对于一个给定的正整数,可能存在多种平方和的表示法。要求你对4个数排序:0 <= a <= b <...原创 2020-03-14 21:40:10 · 389 阅读 · 2 评论 -
蓝桥杯第七届G题:剪邮票+bfs
题目描述如【图1.jpg】, 有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。(仅仅连接一个角不算相连)比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。请你计算,一共有多少种不同的剪取方法。请填写表示方案数目的整数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。这个题我先是用的dfs来做,但是写到后面发...原创 2020-03-14 17:44:40 · 288 阅读 · 0 评论 -
蓝桥杯第七届F题:方格填数+dfs
题目描述如下的10个格子填入0~9的数字。要求:连续的两个数字不能相邻。(左右、上下、对角都算相邻)一共有多少种可能的填数方案?请填写表示方案数目的整数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。思路对每个方格dfs,我们判断的是每个数字是否用过且相邻位置是否连续。我们可以从左到右dfs,从上到下dfs,所以没走到的方格不需要判断,只判断已走过的方格。ch...原创 2020-03-12 16:45:22 · 233 阅读 · 0 评论 -
蓝桥杯第七届E题:抽签+递归
题目描述X星球要派出一个5人组成的观察团前往W星。其中:A国最多可以派出4人。B国最多可以派出2人。C国最多可以派出2人。…那么最终派往W星的观察团会有多少种国别的不同组合呢?下面的程序解决了这个问题。数组a[] 中既是每个国家可以派出的最多的名额。程序执行结果为:DEFFFCEFFFCDFFFCDEFFCCFFFCCEFFCCDFFCCDEFBEFFFBD...原创 2020-03-11 21:17:32 · 268 阅读 · 0 评论 -
蓝桥杯第七届D题:快速排序
题目描述排序在各种场合经常被用到。快速排序是十分常用的高效率的算法。其思想是:先选一个“标尺”,用它把整个队列过一遍筛子,以保证:其左边的元素都不大于它,其右边的元素都不小于它。这样,排序问题就被分割为两个子区间。再分别对子区间排序就可以了。下面的代码是一种实现,请分析并填写划线部分缺少的代码。思路就是快排的另一种写法,思路和快速排序一样代码#include <st...原创 2020-03-11 20:31:57 · 121 阅读 · 0 评论 -
蓝桥杯第七届C题:凑算式+暴力
题目描述这个算式中AI代表19的数字,不同的字母代表不同的数字。比如:6+8/3+952/714 就是一种解法,5+3/1+972/486 是另一种解法。这个算式一共有多少种解法?注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。思路枚举A,B,C…每一种的可能性,并且ABC的值不相同纯暴力。答案:29代码#include<stdio.h>boo...原创 2020-03-06 23:25:42 · 241 阅读 · 0 评论 -
蓝桥杯第七届B题:生日蜡烛
题目描述某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。思路枚举从1岁到100岁的每一种可能即可。具体看代码答案:26代码#include<stdio.h&g...原创 2020-03-06 22:45:42 · 241 阅读 · 0 评论 -
蓝桥杯第七届A题:煤球数目
题目描述有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),…如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。思路本题属于规律题,这里求的是0~100层一共有多少煤球?找规律可发现第二层比第一层多两个,第三层比第二层...原创 2020-03-06 22:34:50 · 938 阅读 · 0 评论 -
蓝桥杯第八届G题:日期问题
题目描述小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在1960年1月1日至2059年12月31日。令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。更加麻烦的是,年份也都省略了前两位,使得文献上的一个日期,存在很多可能的日期与其对应。比如02/03/04,可能是2002年03月04日、2004年02月03日...原创 2020-03-04 21:24:51 · 535 阅读 · 0 评论 -
蓝桥杯第八届F题:最大公共子串
题目描述最大公共子串长度问题就是:求两个串的所有子串中能够匹配上的最大长度是多少。比如:“abcdkkk” 和 “baabcdadabc”,可以找到的最长的公共子串是"abcd",所以最大公共子串长度为4。下面的程序是采用矩阵法进行求解的,这对串的规模不大的情况还是比较有效的解法。请分析该解法的思路,并补全划线部分缺失的代码思路最大公共子串纯模板,详情看博客https://blog...原创 2020-03-04 17:44:05 · 260 阅读 · 0 评论 -
蓝桥杯第八届E题:取位数+递归
题目描述求1个整数的第k位数字有很多种方法。以下的方法就是一种。对于题目中的测试数据,应该打印5。请仔细分析源码,并补充划线部分所缺少的代码。思路len函数求整数长度。if(len(x)-k==0) 判断位数是否相等,相等则直接放回个位数,填空处则是对递归整数除10操作。答案f(x/10,k)代码#include <stdio.h>int len(int x){//几位...原创 2020-03-04 17:37:45 · 149 阅读 · 0 评论 -
蓝桥杯第八届D题:方格分割+dfs
题目描述6x6的方格,沿着格子的边线剪开成两部分。要求这两部分的形状完全相同。就是可行的分割法。试计算:包括这3种分法在内,一共有多少种不同的分割方法。注意:旋转对称的属于同一种分割法。输入无输出包括这3种分法在内,一共有多少种不同的分割方法请提交该整数,不要填写任何多余的内容或说明文字。思路这个题要对分割线dfs来做。分割线关于(3,3)对称,像两边搜索即可。递归边界...原创 2020-03-04 16:57:22 · 258 阅读 · 0 评论 -
蓝桥杯第八届B题:等差素数列+暴力枚举
题目描述2,3,5,7,11,13,…是素数序列。类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。上边的数列公差为30,长度为6。2004年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。这是数论领域一项惊人的成果!有这一理论为基础,请你借助手中的计算机,满怀信心地搜索:长度为10的等差素数列,其公差最小值是多少?注意:需要提交的...原创 2020-03-04 12:08:27 · 213 阅读 · 0 评论 -
蓝桥杯第六届H题:移动距离+简单推理
题目描述X星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为1,2,3…当排满一行时,从下一行相邻的楼往反方向排号。比如:当小区排号宽度为6时,开始情形如下:1 2 3 4 5 612 11 10 9 8 713 14 15 …我们的问题是:已知了两个楼号m和n,需要求出它们之间的最短移动距离(不能斜线方向移动)输入输入为3个整数w m n,空格分开,...原创 2020-03-02 20:46:56 · 302 阅读 · 0 评论 -
蓝桥杯第六届D题:格子中输出(%*s输出)
题目描述StringInGrid函数会在一个指定大小的格子中打印指定的字符串。要求字符串在水平、垂直两个方向上都居中。如果字符串太长,就截断。如果不能恰好居中,可以稍稍偏左或者偏上一点。思路这个题就是考是否掌握%*s输出,%*s输出就相当于%xs输出.例如printf("%*s",10,s),就相当于printf("%10s",s);不足就用空格来补。答案:(width-strle...原创 2020-03-02 16:05:22 · 135 阅读 · 0 评论 -
蓝桥杯第六届E题:九数组分数+dfs(回溯)
描述1,2,3…9 这九个数字组成一个分数,其值恰好为1/3,如何组法?下面的程序实现了该功能,请填写划线部分缺失的代码。思路dfs模板加个回溯条件即可答案:{t=x[k]; x[k]=x[i]; x[i]=t;}代码#include <stdio.h>void test(int x[]){ int a = x[0]*1000 + x[1]*100 + x[2]*1...原创 2020-03-01 21:17:21 · 158 阅读 · 0 评论 -
蓝桥杯第六届G题:牌型种数+dfs
描述小明被劫持到X赌城,被迫与其他3人玩牌。一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。这时,小明脑子里突然冒出一个问题:如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序,自己手里能拿到的初始牌型组合一共有多少种呢?思路枚举每张牌的数目和为13即可,所以用dfs递归去做。答案:3598180代码#include<cstdio>#in...原创 2020-03-01 20:45:32 · 220 阅读 · 0 评论 -
蓝桥杯第六届F题:加法变乘法
描述我们都知道:1+2+3+ … + 49 = 1225现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015比如:1+2+3+…+1011+12+…+2728+29+…+49 = 2015就是符合要求的答案。请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。思路其实要变的就两个符号,其他是不变的,观察结果,可以用下面的公式减去上面的...原创 2020-03-01 18:02:25 · 169 阅读 · 0 评论 -
蓝桥杯第六届C+三羊献瑞+简单推理
描述观察下面的加法算式:其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。思路设此公式为a+b=c,观察此公式得,a肯定是一个9000以上的四位数,而肯定在1000到2000之间,a和b重复数字只有1个,总共使用到的只有七个数字,所以可以用一个标记数组进行判断。答案:1085代码#include<cstdio>using namespace std;int ...原创 2020-02-29 12:54:31 · 339 阅读 · 0 评论 -
蓝桥杯第六届B+星系炸弹+日期计算
描述在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。每个炸弹都可以设定多少天之后爆炸。比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。请填写该日期,格式为 yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19请严格按...原创 2020-02-29 11:51:30 · 189 阅读 · 0 评论 -
蓝桥杯第六届A+奖券数目+简单推理
描述有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利。虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求。某抽奖活动的奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码,主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张。代码#include<cstdio>using namespace std;int main(...原创 2020-02-29 11:46:10 · 86 阅读 · 0 评论