![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
蓝桥杯
文章平均质量分 62
YouthUpward
记得爱护眼睛
展开
-
平面图判连通 蓝桥杯模拟赛题
目录一、题目二、分析三、代码四、总结一、题目著名设计师小蓝给蓝桥小学设计了一个教学楼。 蓝桥小学经常下雨,所以校长希望教学楼任何地方都可以连通到其它地方。 小蓝给出了教学楼的平面图,用一个 nn 行 mm 列的 0101 矩阵表示,其中 00 表示空地,11 表示教学 楼。两个相邻的 11 (上下相邻或左右相邻)之间互相可达。 请帮小蓝检查一下,是否教学楼的任意两个地方都可以连通到其它地方。输入描述输入的第一行包含两个整数 n, mn,m,用一个空格分隔。接下来 nn 行,每行一个长度原创 2022-01-20 21:46:31 · 559 阅读 · 0 评论 -
蓝桥杯 大整数乘法 试题 算法训练 P0805
题目当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。具体来说,首先以字符串的形式输入两个整数,每个整数的长度不会超过10位,然后把它们相乘的结果存储在另一个字符串当中(长度不会超过20位),最后把这个字符串打印出来。例如,假设用户输入为:62773417和12345678,则输出结果为:774980393241726基本思路模拟竖式,两层循环,对于x的每位,都要乘以y。ps:在草稿纸上写写画画思路会更清晰。//大整数乘法:模拟竖式原创 2022-01-14 21:52:21 · 1023 阅读 · 3 评论 -
蓝桥杯 算法提高 自然数拆分 回溯
题目HJQ同学发现了一道数学题,要求n拆分成若干自然数和的方案输入格式 输入n输出格式 输出n拆分成若干自然数和的方案,每个方案一行数据规模和约定 n <= 10资源限制内存限制:256.0MB C/C++时间限制:1.0s思路如图树形结构,回溯+剪枝。代码#include <iostream>using namespace std;#include <vector>#include <numeric>vector<原创 2022-04-02 22:31:30 · 997 阅读 · 0 评论 -
蓝桥杯 算法训练 斐波那契串
目录一、题目二、思路三、代码四、总结五、参考一、题目 斐波那契串由下列规则生成: F[0] = "0"; F[1] = "1"; F[n] = F[n-1] + F[n-2] (n≥2,+ 表示连接) 给出一个由0和1构成的串S和一个数n,求出F[n]中S出现的次数。输入格式 第一行一个数n。 第二行一个01串S。输出格式 答案。样例输入9610110101101101样例输出7540113804746346428原创 2022-03-22 14:20:21 · 1764 阅读 · 3 评论 -
蓝桥杯 算法训练 矩阵乘法
题目问题描述 输入两个矩阵,分别是ms,sn大小。输出两个矩阵相乘的结果。输入格式 第一行,空格隔开的三个正整数m,s,n(均不超过200)。 接下来m行,每行s个空格隔开的整数,表示矩阵A(i,j)。 接下来s行,每行n个空格隔开的整数,表示矩阵B(i,j)。输出格式 m行,每行n个空格隔开的整数,输出相乘後的矩阵C(i,j)的值。样例输入2 3 21 0 -11 1 -30 31 23 1样例输出-3 2-8 2提示矩阵C应该是m行n列,其中C(i,j)原创 2022-03-29 12:18:26 · 90 阅读 · 0 评论 -
埃氏筛 C++
在 求指定范围内的质数个数 问题中,一般有试除法和筛法两大类。 试除法【时间复杂度为O(n^2)】容易超时。筛法中又有朴素筛、埃氏筛、欧拉筛。虽然欧拉筛【时间复杂度为O(n)】是线性的最优的,但是在理解和写比较复杂。一般用埃氏筛【时间复杂度为O(n loglogn)】就够了,埃氏筛代码简洁、更易理解。且本篇的埃氏筛还有一处细节优化。埃氏筛原理 先假设每个数都是质数。从 2 开始,2是质数,那么2的倍数:4、6、8、10、12、14、16... ...原创 2022-03-27 15:25:46 · 3101 阅读 · 0 评论 -
蓝桥杯 逆波兰表达式——2013年省赛C/C++A组真题6
正常的表达式称为中缀表达式,运算符在中间,主要是给人阅读的,机器求解并不方便。例如:3 + 5 * (2 + 6) - 1而且,常常需要用括号来改变运算次序。相反,如果使用逆波兰表达式(前缀表达式)表示,上面的算式则表示为: - + 3 * 5 + 2 6 1不再需要括号,机器可以用递归的方法很方便地求解。为了简便,我们假设:只有 + - * 三种运算符每个运算数都是一个小于10的非负整数下面的程序对一个逆波兰表示串进行求值。其返回值为一个结构:其中第一元素表示求值结果,第二个元素表.原创 2021-11-07 16:51:56 · 126 阅读 · 0 评论 -
蓝桥杯 算法提高 回文串
题目问题描述 一个正整数N被称为回文数,当且仅当N在十进制下,正着读和反着读是一样的。 如12321是回文的,而12320不是。 现在让你求出第K小的回文数。(第0小的是 1,第1小的是 2)输入格式 输入一个数K。输出格式 一个数字N,为第K小的回文数。样例输入19样例输出111数据规模和约定 对于30% 的数据K≤10000; 对于100% 的数据K≤109。思路 以 4位数 为例,如果它是回文数的话,那么它...原创 2022-03-28 20:48:19 · 992 阅读 · 0 评论 -
蓝桥杯 算法提高 奥运会开幕式 deque
题目学校给高一(三)班分配了一个名额,去参加奥运会的开幕式。每个人都争着要去,可是名额只有一个,怎么办?班长想出了一个办法,让班上的所有同学(共有n个同学)围成一圈,按照顺时针方向进行编号。然后随便选定一个数m,并且从1号同学开始按照顺时针方向依次报数,1, 2, …, m,凡报到m的同学,都要主动退出圈子。然后不停地按顺时针方向逐一让报出m者出圈,最后剩下的那个人就是去参加开幕式的人。 要求:用环形链表的方法来求解。所谓环形链表,即对于链表尾结点,其next指针又指向了链表的首结点。基本思路是先创建原创 2022-04-02 19:34:15 · 116 阅读 · 0 评论 -
蓝桥杯 前缀判断——2013年省赛C/C++A组真题5
题目标题:前缀判断如下的代码判断 needle_start指向的串是否为haystack_start指向的串的前缀,如不是,则返回NULL。比如:“abcd1234” 就包含了 “abc” 为前缀char* prefix(char* haystack_start, char* needle_start){ char* haystack = haystack_start; char* needle = needle_start; while(*haystack && *nee.原创 2021-11-07 11:32:23 · 90 阅读 · 0 评论 -
蓝桥杯 错误票据——2013年省赛C/C++ A组
资源限制 —— 时间限制:1.0s 内存限制:256.0MB 问题描述 —— 某涉密单位下发了某种票据,并要在年终全部收回。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。你的任务是通过编程,找出断号的ID和重号的ID。假设断号不可能发生在最大和最小号。要求程序首先输入一个整数N(N<100)表示后面数据行数。接着读入N行数据。每行数据长度不等,是用空.原创 2021-11-10 20:42:33 · 143 阅读 · 0 评论 -
蓝桥杯 BASIC-9 特殊回文数
一、题目二、思路三、代码总结一、题目资源限制时间限制:1.0s 内存限制:512.0MB问题描述 123321是一个非常特殊的数,它从左边读和从右边读是一样的。 输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。输入格式 输入一行,包含一个正整数n。输出格式 按从小到大的顺序输出满足条件的整数,每个整数占一行。 样例输入 52 样例输出 899998 989989 998899数据规模和约定 1<=n<=54。.原创 2021-11-29 12:49:29 · 162 阅读 · 0 评论 -
蓝桥杯 振兴中华——2013年省赛C/C++ A组真题3
题目标题: 振兴中华 小明参加了学校的趣味运动会,其中的一个项目是:跳格子。 地上画着一些格子,每个格子里写一个字,如下所示:(也可参见p1.jpg)从我做起振 我做起振兴 做起振兴中 起振兴中华 比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。要求跳过的路线刚好构成“从我做起振兴中华”这句话。 请你帮助小明算一算他一共有多少种可能的跳跃路线呢?答案是一个整数,请通过浏览器直接提交该数.原创 2021-11-07 00:04:54 · 125 阅读 · 0 评论 -
蓝桥杯 后缀字符串 map
目录一、题目二、思路三、代码四、参考一、题目一天蒜头君得到 n 个字符串 ,每个字符串的长度都不超过 10。蒜头君在想,在这 n个字符串中,以 为后缀的字符串有多少个呢?输入格式第一行输入一个整数 n。接下来 n行,每行输入一个字符串 。输出格式输出 n 个整数,第 i个整数表示以 为后缀的字符串的个数。数据范围对于50%的数据,。对于100%的数据,。所有的字符串仅由小写字母组成。样例输入...原创 2022-03-26 22:35:40 · 716 阅读 · 0 评论 -
蓝桥杯 算法提高 周期字串
题目问题描述 右右喜欢听故事,但是右右的妈妈总是讲一些“从前有座山,山里有座庙,庙里有个老和尚给小和尚讲故事,讲的什么呢?从前有座山……”这样循环的故事来搪塞右右。 我们定义,如果一个字符串是以一个或者一个以上的长度为k的重复字符串所连接成的,那么这个字符串就叫做周期为k的串。 例如: 字符串’abcabcabcabc’周期为3,因为它是由4个循环’abc’组成的。它同样是以6为周期(两个重复的’abcabc’)和以12为周期(一个循环’abcabcabcabc’)。 右右现在想给他的原创 2022-03-29 10:19:27 · 155 阅读 · 0 评论 -
蓝桥杯 卡片 省赛
思路统计从1-n的0-9的数字,直到某个数字>=2021。#include <iostream>using namespace std;#include <string>#include <sstream>#include <map>map <char, int>m;void i2s(string &str,int n){ stringstream ss; ss << n; ss >>.原创 2022-04-08 23:57:49 · 159 阅读 · 0 评论 -
蓝桥杯 历届真题 排列序数【第五届】【决赛】【A组】
一、题目如果用a b c d这4个字母组成一个串,有4!=24种,如果把它们排个序,每个串都对应一个序号: abcd 0 abdc 1 acbd 2 acdb 3 adbc 4 adcb 5 bacd 6 badc 7 bcad 8 bcda 9 bdac 10 bdca 11 cabd 12 cadb 13 cbad 14 cbda 15 cdab 16 cdba 17 …现在有不多于10个两两不同的小写字母,给出它们组成的串原创 2022-03-18 15:04:17 · 867 阅读 · 0 评论 -
蓝桥杯 算法提高 全排列 next_pertumutation
题目输出自然数1输出自然数1到n所有不重复的排列,即n的全排列。到n所有不重复的排列,即n的全排列。资源限制内存限制:256.0MB C/C++时间限制:1.0s代码#include <iostream>using namespace std;#include <cstdio>#include <vector>#include <algorithm> //next_pertumutation头文件int main(){ int原创 2022-04-01 22:15:21 · 603 阅读 · 0 评论 -
蓝桥杯 第几个幸运数 set
一、题目到x星球旅行的游客都被发给一个整数,作为游客编号。x星的国王有个怪癖,他只喜欢数字3,5和7。国王规定,游客的编号如果只含有因子:3,5,7,就可以获得一份奖品。前10个幸运数字是:3 5 7 9 15 21 25 27 35 45,因而第11个幸运数字是:49小明领到了一个幸运数字 59084709587505。去领奖的时候,人家要求他准确说出这是第几个幸运数字,否则领不到奖品。请你帮小明计算一下,59084709587505是第几个幸运数字。输出输出一个整数表示答案原创 2022-03-27 11:33:52 · 139 阅读 · 0 评论 -
蓝桥杯 算法训练 数的潜能 正整数分解使得乘积最大问题
目录一、题目二、思路三、代码四、遇到的问题五、参考一、题目问题描述 将一个数N分为多个正整数之和,即N=a1+a2+a3+…+ak,定义M=a1a2a3*…*ak为N的潜能。 给定N,求它的潜能M。 由于M可能过大,只需求M对5218取模的余数。输入格式 输入共一行,为一个正整数N。输出格式 输出共一行,为N的潜能M对5218取模的余数。样例输入10样例输出36数据规模和约定1<=N<10^18二、思路具体思路可见文末参考博客。先来看几个数找找规原创 2022-02-25 18:00:18 · 1124 阅读 · 0 评论 -
蓝桥杯 算法训练 按位输出数字
一、题目设计一个程序,从键盘输入一个不超过5位的正整数(即1~99999),按顺序输出其所有数字,中间用一个空格格开,要求使用if语句编写。例如,如果用户从键盘输入123,则程序输出1 2 3。输入格式 输入一个整数n输出格式 输出这个整数的每位数字,以空格隔开。样例输入123样例输出1 2 3数据规模和约定1<=n<=99999二、思路取余,得到低位依次压入栈,再除10去掉低位,循环这个过程直到最后一位。for (;;) {//这个处理办法很像递归 if原创 2022-03-18 13:51:41 · 339 阅读 · 0 评论 -
蓝桥杯 算法提高 P0603 统计不同单词个数
一、题目编写一个程序,输入一个句子,然后统计出这个句子当中不同的单词个数。例如,对于句子“one little two little three little boys”,总共有5个不同的单词,one, little, two, three, boys。输入 one little two little three little boys输出 5二、思路将每个单词放入set中,利用set去重。三、代码#include <iostream>using namespace st原创 2022-03-16 21:40:46 · 632 阅读 · 0 评论 -
蓝桥杯 算法提高 一元三次方程求解
一、题目有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差的绝对值>=1。要求三个实根。 输入格式 四个实数:a,b,c,d 输出格式 由小到大依次在同一行输出这三个实根(根与根之间留有空格),并精确到小数点后2位 样例输入1 -5 -4 20样例输出2.00 2.00 5.00数据规模和约定|a|,|b|,|c|,|d|&原创 2022-03-17 21:36:08 · 1117 阅读 · 1 评论 -
蓝桥杯 BASIC-10 十进制转十六进制
文章目录题目描述方法一:printf格式输出补充:scanf、printf——二、八、十、十六进制相互转换方法二:除16取余法补充:除R取余法——十进制转R进制总结题目描述资源限制—— 时间限制:1.0s 内存限制:512.0MB问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进原创 2021-11-09 15:27:02 · 107 阅读 · 0 评论 -
蓝桥杯 算法训练 砝码称重 回溯
题目小明捡到了一架没有游标的天平和N个标有重量的砝码,于是他想知道他能够称出多少种不同的重量(假设只能将砝码放在一侧)。输入格式 输入的第一行包含一个正整数N,表示有N个砝码。接下来一行有N个正整数,表示N个砝码的重量。输出格式 输出一行,包含一个整数,表示能够称出多少种不同的重量。样例输入31 2 3样例输出6数据规模和约定 N<16,砝码重量<=1000。思路这是一个回溯法求子集和的问题。如图,以砝码重量为[1,2,3]为例。构造一棵子集树并在结点求和。原创 2022-04-01 09:48:23 · 1397 阅读 · 2 评论