- 博客(53)
- 收藏
- 关注
原创 蓝桥杯省赛练习(计蒜客)[目录]
题目解题情况矩阵旋转自己解决最大子阵未完成四平方和未完成A+B问题自己解决A×\times×B问题自己解决蒜头君的随机数自己解决交叉排序自己解决进制转换自己解决...
2019-01-14 13:36:55 336
原创 2013蓝桥杯B组-带分数
100 可以表示为带分数的形式:100 = 3 + 69258 / 714还可以表示为:100 = 82 + 3546 / 197注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。类似这样的带分数,100 有 11 种表示法。题目要求:从标准输入读入一个正整数N (N<1000*1000)程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。注...
2019-03-16 23:44:07 212
原创 C++用递归写的全排列(部分完成)
解:先举个例子看看:1 2 31 3 22 1 32 3 13 1 23 2 1 三位数时有6种情况,以位数划分,从高位向低位,可总结出,百位有3种情况(1,2,3),在百位确定的情况下,十位有2种情况,而个位固定。共3x2情况。 再看四位数,最高位有4种情况,然后就与三位数情况相同,共4x3x2种。 因此可以用位数当参数来确定递归次数。这个参数也可以用来确定当前位数有几...
2019-03-07 14:39:14 303
原创 2013蓝桥杯B组-第39级台阶
小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?请你利用计算机的优势,帮助小明寻找答案。要求提交的是一个整数。注意:不要提交解答过程,或其它的辅助说明文字。...
2019-03-02 21:54:16 243
原创 2013蓝桥杯B组-前缀判断
如下的代码判断 needle_start指向的串是否为haystack_start指向的串的前缀,如不是,则返回NULL。比如:"abcd1234" 就包含了 "abc" 为前缀char* prefix(char* haystack_start, char* needle_start){char* haystack = haystack_start;char*
2019-03-02 19:13:24 188
原创 2013蓝桥杯B组-连号区间
小明这些天一直在思考这样一个奇怪而有趣的问题:在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是:如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。当N很小的时候,小明可以很快地算出答案,但是当N变大的时候,问题就不是那么简单了,现在小明需要你的帮助。输入格式:第一行是一个...
2019-03-02 12:48:35 200
原创 2013蓝桥杯B组-三部排序
一般的排序有许多经典算法,如快速排序、希尔排序等。但实际应用时,经常会或多或少有一些特殊的要求。我们没必要套用那些经典算法,可以根据实际情况建立更好的解法。比如,对一个整型数组中的数字进行分类排序:使得负数都靠左端,正数都靠右端,0在中部。注意问题的特点是:负数区域和正数区域内并不要求有序。可以利用这个特点通过1次线性扫描就结束战斗!!以下的程序实现了该目标。其中x指向待排序的...
2019-03-01 23:17:38 173
原创 2013蓝桥杯B组-马虎的计算
小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。有一次,老师出的题目是:36 x 495 = ?他却给抄成了:396 x 45 = ?但结果却很戏剧性,他的答案竟然是对的!!因为 36 * 495 = 396 * 45 = 17820类似这样的巧合情况可能还有很多,比如:27 * 594 = 297 * 54假设 a b c d e 代表1~9不同的5个数字(...
2019-02-28 16:46:09 177
原创 2013蓝桥杯B组-高斯日记
题目标题: 高斯日记大数学家高斯有个好习惯:无论如何都要记日记。他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢?高斯出生于:1777年4月30日。在高斯发现的一个重要定理的日记上标注着:5343,因...
2019-02-28 14:36:22 185
原创 蒜头君吃桃 - 计蒜客
解:代码:#include"iostream"using namespace std;long long howmany(int a){ if(a==1)return 1; else return 2*(howmany(a-1)+1);}int main(){ int n; scanf("%d",&n); printf("%
2019-01-31 12:05:54 265
原创 素数距离 - 计蒜客
蒜头君请你求出区间 [l,r][l,r][l,r] 上距离最近的相邻的素数对和距离最远的相邻的素数对。3,53,53,5 是相邻的素数,2,52, 52,5 不是相邻的素数。距离定义为 222 个素数的差的绝对值。比如5,7 距离为 2。输入格式输入 222 个整数 l,r(1≤l≤r≤8000000)l, r(1 \le l \le r \le 8000000)l,r(1≤l≤r≤8000...
2019-01-30 19:32:44 352
原创 蒜头君的猜想 - 计蒜客
有一天蒜头君突发奇想,他有一个猜想,任意一个大于 222 的偶数好像总能写成 222 个质数的和。蒜头君查了资料,发现这个猜想很早就被一个叫哥德巴赫的人提出来了,称为哥德巴赫猜想。目前还没有证明这个猜想的正确性。蒜头君告诉你一个整数 nnn ,让你用这个数去验证。注意 111 不是质数。输入格式输入一个偶数 n(2<n≤8000000)n(2 < n \le...
2019-01-26 21:12:58 342
原创 两仪剑法 - 计蒜客
解:辗转相除法计算出最大公约数,在由a*b/最大公约数,来求出最小公倍数。代码:#include"iostream"using namespace std;long long gcd(long long a,long long b){ if(b==0) return a; return gcd(b,a%b);}int main(){ int t; long long a...
2019-01-26 15:54:44 447
原创 任务系统 - 计蒜客
蒜头君设计了一个任务系统。这个系统是为了定时提醒蒜头君去完成一些事情。系统大致如下,初始的时候,蒜头君可能会注册很多任务,每一个任务的注册如下:Register Qnum Period表示从系统启动开始,每过 PeriodPeriodPeriod 秒提醒蒜头君完成编号为 QnumQ_{num}Qnum 的任务。你能计算出蒜头君最先被提醒的 kkk 个任务吗?输入格式第一行输入 n(0...
2019-01-24 17:40:09 843
原创 敲7 - 计蒜客
有一种酒桌游戏叫做“敲7”,规则是从一个人开始,说出任意数字,其他人会顺序往后报,如果一个数字包含 777,或者是 777 的倍数,那么需要敲打杯子或盘子,不能说出。现在 nnn 个人围坐在一个圆桌周围,他们编号从 111 到 nnn 顺时针排列。从某一人开始报出一个数字,其他人会按照顺时针方向顺序往后报(加一),如果某个人的数字包含 777,或者是 777 的倍数,那么他将退出游戏,下一个人继...
2019-01-23 14:18:53 860
原创 报数 - 计蒜客
有 nnn 个小朋友做游戏,他们的编号分别是 1,2,3...n1,2,3...n1,2,3...n。他们按照编号从小到大依次顺时针围成一个圆圈,从第一个小朋友开始从 111 报数,依次按照顺时针方向报数(加一),报 mmm 的人会离开队伍,然后下一个小朋友会继续从 111 开始报数,直到只剩一个小朋友为止。输入格式第一行输入俩个整数,nnn,mmm。(1≤n,m≤10001 \leq n,...
2019-01-23 11:38:54 248
原创 网站跳转 - 计蒜客
蒜头君每天都在用一款名为“蒜厂浏览器”的软件。在这个浏览器中,一共三种操作:打开页面、回退和前进。它们的功能如下:打开页面:在地址栏中输入网址,并跳转到网址对应的页面;回退:返回到上一次访问的页面;前进:返回到上次回退前的页面,如果上一次操作是打开页面,那么将无法前进。现在,蒜头君打开浏览器,进行了一系列操作,你需要输出他每次操作后所在页面的网址。输入格式第一行输入一个整数 n(0...
2019-01-22 20:02:21 341
原创 水果店 - 计蒜客
蒜头君经营着一个不大的水果店。他认为生存之道就是经营最受顾客欢迎的水果。现在他想要一份水果销售情况的明细表,这样就可以很容易掌握所有水果的销售情况了。蒜头君告诉你每一笔销售记录的水果名称,产地和销售的数量,请你帮他生成明细表。输入格式第一行是一个整数 N(0<N≤1000)N(0 < N \le 1000)N(0<N≤1000),表示工有 NNN 次成功的交...
2019-01-21 19:28:11 323
原创 蒜头君面试 - 计蒜客
蒜头君来蒜厂面试的时候,曾经遇到这样一个面试题:给定 nnn 个整数,求里面出现次数最多的数,如果有多个重复出现的数,求出值最大的一个。当时可算是给蒜头君难住了。现在蒜头君来考考你。输入格式第一行输入一个整数 n(1≤n≤100000)n(1 \le n \le 100000)n(1≤n≤100000),接下来一行输入 nnn 个 int 范围内的整数。输出格式输出出现次数最多的数和出现...
2019-01-20 22:19:22 354
原创 蒜头君学英语 - 计蒜客
蒜头君快要考托福了,这几天,蒜头君每天早上都起来记英语单词。花椰妹时不时地来考一考蒜头君:花椰妹会询问蒜头君一个单词,如果蒜头君背过这个单词,蒜头君会告诉花椰妹这个单词的意思,不然蒜头君会跟花椰妹说还没有背过。单词是由连续的大写或者小写字母组成。**注意单词中字母大小写是等价的。**比如You和you是一个单词。输入格式首先输入一个 n(1≤n≤100000)n(1 \le n \le 10...
2019-01-19 21:57:57 290
原创 计算集合的并 - 计蒜客
给你两个集合,计算其并集,即 {A}+{B}\{A\} + \{B\}{A}+{B}。注:{A}+{B}\{A\} + \{B\}{A}+{B} 中不允许出现重复元素,但是 {A}\{A\}{A} 与 {B}\{B\}{B} 之间可能存在相同元素。输入格式输入数据分为三行,第一行有两个数字 n,m(0<n,m≤10000)n, m(0 < n,m\leq 1000...
2019-01-19 21:19:08 291
原创 堆积木 - 计蒜客
蒜头君有 nnn 块积木,编号分别为 111 到 nnn。一开始,蒜头把第 iii 块积木放在位置 iii。蒜头君进行 mmm 次操作,每次操作,蒜头把位置 bbb 上的积木整体移动到位置 aaa 上面。比如 111 位置的积木是 111,222 位置的积木是 222,那么把位置 222 的积木移动到位置 111 后,位置 111 上的积木从下到上依次为 1,21,21,2。输入格式第一...
2019-01-18 23:20:48 728
原创 打印锯齿矩阵 - 计蒜客
锯齿矩阵是指每一行包含的元素个数不相同的矩阵,比如:3 5 2 6 12 3 41 6 2 7读入若干对整数 (x,y)(x,y)(x,y),表示在第 xxx 行的末尾加上一个元素 yyy。输出最终的锯齿数组。初始时矩阵为空。输入格式第一行输入两个整数 n,m(1≤n,m≤10000)n,m(1 \leq n,m \leq 10000)n,m(1≤n,m≤10000),其中 nnn...
2019-01-18 21:51:49 455
原创 islands打炉石传说
islands 最近在完一款游戏“炉石传说”,又名“魔兽英雄传”。炉石传说是一款卡牌类对战的游戏。游戏是两人对战,总的来说,里面的卡牌分成两类,一类是法术牌,另一类是随从牌(所谓随从就是怪物)。为了简化问题,现在假设随从牌的作用是召唤一个具有一定攻击力的怪物,法术牌的作用是给某个随从增加一定攻击力。随从牌和法术牌的使用都需要消耗一定的法力值。现在 islands 有 101010 点法力...
2019-01-17 16:45:22 378
原创 幼儿园买玩具
蒜厂幼儿园有 nnn 个小朋友,每个小朋友都有自己想玩的玩具。身为幼儿园园长的你决定给幼儿园买一批玩具,由于经费有限,你只能买 mmm 个玩具。已知玩具商店一共卖 kkk 种玩具,编号为 1,2,3,...k1,2,3,...k1,2,3,...k,你让每个小朋友把想玩的玩具编号都写在了纸上。你希望满足尽可能多的小朋友的需求,请计算出最多同时能满足多少个小朋友的玩具需求。输入格式第一行,...
2019-01-17 14:21:43 226
原创 得到整数 X
某君有 nnn 个互不相同的正整数,现在他要从这 nnn 个正整数之中无重复地选取任意个数,并仅通过加法凑出整数 XXX。求某君有多少种不同的方案来凑出整数 XXX。输入格式第一行,输入两个整数 n,X(1≤n≤20,1≤X≤2000)n,X(1 \leq n \leq 20, 1 \leq X \leq 2000)n,X(1≤n≤20,1≤X≤2000)。接下来输入 nnn 个整数,每个...
2019-01-17 10:34:54 252
原创 显示屏输出
蒜头君有一块数码管显示屏,只能显示数字。每个数字的显示如下。每 777 个数码管用来显示一个数字。 -| | -| | -每个数字对应的输出如下。 - - - - - - - -| | | | | | | | | | | | | | - - - - - - - | | |...
2019-01-16 13:38:30 310
原创 机器人
蒜头君收到了一份礼物,是一个最新版的机器人。这个机器人有 444 种指令:forward x,前进 xxx 米。back x,先向后转,然后前进 xxx 米。left x,先向左转,然后前进 xxx 米。right x,先向右转,然后前进 xxx 米。现在把机器人放在坐标轴原点,起始朝向为 xxx 轴正方向。经过一系列指令以后,你能告诉蒜头君机器人的坐标位置吗。...
2019-01-15 16:36:07 254
原创 回文数
一个正整数,如果交换高低位以后和原数相等,那么称这个数为回文数。比如 121121121,233223322332 都是回文数,131313,456745674567 不是回文数。任意一个正整数,如果其不是回文数,将该数交换高低位以后和原数相加得到一个新的数,如果新数不是回文数,重复这个变换,直到得到一个回文数为止。例如,575757 变换后得到 132(57+75)132(57 + 75)...
2019-01-15 13:06:50 458
原创 进制转换
输入一个十进制数 NNN,将它转换成 RRR 进制数输出。在 10≤R≤1610 \le R \le 1610≤R≤16 的情况下,用’A’表示 101010,用’B’表示 111111,用’B’表示 111111,用’C’表示 121212,用’D’表示 131313,用’E’表示 141414,用’F’表示 151515。输入格式输入包含两个整数 N(N≤10000)N(N \le 10...
2019-01-14 12:43:20 159
原创 交叉排序
蒜头君很无聊,现在有 NNN 个数,其中第 i(1≤i≤N)i(1 \leq i \leq N)i(1≤i≤N) 个数是 AiA_iAi。现在他先将 Al1,Al1+1...Ar1A_{l_1}, A_{l_1+1}...A_{r_1}Al1,Al1+1...Ar1 从小到大排序。再将 Al2,Al2+1...Ar2A_{l_2}, A_{l_2+1}...A_{r_2}Al2...
2019-01-14 12:20:10 223
原创 蒜头君的随机数
蒜头君想在学校中请一些同学一起做一项问卷调查,为了确保实验的客观性,他先用计算机生成了 n(1≤n≤100)n(1 \le n \le 100)n(1≤n≤100) 个 111 到 100010001000 之间的随机整数,对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助蒜头君完成“去重”与“...
2019-01-14 12:03:01 221
原创 AxB问题
计算两个非负整数 A,BA,BA,B 的乘积,A,BA,BA,B 可能会很大。输入格式第一行输入一个非负整数 AAA。第二行输入一个非负整数 BBB。A,BA,BA,B 的长度不大于 500500500。输出格式输出 A×BA\times BA×B 的值。样例输入43211234样例输出5332114解:题解晚些写代码#include"iostream"#i...
2019-01-13 20:44:44 575
原创 A+B问题
计算两个非负整数A,B 的和。不过这一次有些特殊, A,B 可能会很大。输入格式第一行输入一个非负整数A 。第二行输入一个非负整数 B。A,B的长度不大于500 。输出格式输出A+B的值。不要有多余的前导零。样例输入1231234样例输出1357解:1.A与B存放后,最高位都左置顶了,不方便直接相加,可用algorithm中的reverse函数反转后按位相加,...
2019-01-12 20:38:47 191
原创 旋转矩阵
给出一个n*m 的整数矩阵,请你把这个矩阵顺时针旋转90o 以后输出。输入格式第一行输入两个整数n,m(1<=n,m<=200) ,用空格隔开。接下来 行,每行输入m个整数,表示输入的矩阵。矩阵中元素都是 int 范围内的整数。输出格式输入m行,每行n个空格隔开的整数,表示旋转以后的矩阵。注意:每行末尾不能输出多余的空格。样例输入3 4-1 3 6 37 7 9...
2019-01-12 18:40:42 971
原创 C++头文件algorithm中常用函数测试
目录1.max(),min(),abs()测试2.swap()测试3.reverse()测试4.next_permutation()测试5.fill()测试6.sort()测试7. lower_bound(),upper_bound()测试其中涉及到用地址来确定使用范围的函数,逗号前均为迭代器或数组中需要操作元素段的头部地址,逗号后为需要操作元素段的尾部地址例:sort(a,a+2)上述操作...
2019-01-11 00:12:12 350
原创 蓝桥杯题解-最大最小公倍数-ALGO-2
原题地址:最大最小公倍数问题描述已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。输入格式输入一个正整数N。输出格式输出一个整数,表示你找到的最小公倍数。样例输入9样例输出504数据规模与约定1 <= N <= 106。解:当n为奇数时,1-n中最大的三个n,(n-1),(n-2)均为质因数,相乘别便是1-n中的最大最小...
2019-01-09 19:46:17 198
原创 蓝桥杯题解-区间K大数查询-ALGO-1
原题地址:区间K大数查询问题描述给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。输入格式第一行包含一个数n,表示序列长度。第二行包含n个正整数,表示给定的序列。第三个包含一个正整数m,表示询问个数。接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。输出格式总共输出m行,每行一个数,表示询问...
2019-01-08 01:21:42 196
原创 蓝桥杯题解-数列排序-BASIC-13
原题地址:数列排序问题描述给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1&amp;amp;amp;amp;lt;=n&amp;amp;amp;amp;lt;=200输入格式第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式输出一行,按从小到大的顺序输出排序后的数列。样例输入58 3 6 4 9样例输出3 4 6 8 9解1:冒泡排序代码1:#include&am
2019-01-08 01:11:23 324
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人