蓝桥杯
挑战蓝桥杯,挑战自己。
八块腹肌的小胖
中厂程序猿,有任何需要辅导的功能性代码可随时联系,t-cmath-wulong_stu
展开
-
2012 蓝桥杯【初赛试题】古堡算式
古堡算式福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:ABCDE * ? = EDCBA他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”华生:“我猜也是!”于是,两人沉默了好久,还是没有算出合适的结果来。请你利用计算机的优势,找到破解的答案。把 ABCDE 所代表的数字写出来。思路:循环遍历每个字母可能的情况。因为是填空题,要的是结果,所以笔者直接用暴力手段取结果了 结果:...原创 2018-03-14 21:27:37 · 218 阅读 · 2 评论 -
2012年第三届蓝桥杯C/C++程序设计本科B组省赛 海盗比酒量(结果填空)
海盗比酒量有一群海盗(不多于20人),在船上比拼酒量。过程如下:打开一瓶酒,所有在场的人平分喝下,有几个人倒下了。再打开一瓶酒平分,又有倒下的,再次重复...... 直到开了第4瓶酒,坐着的已经所剩无几,海盗船长也在其中。当第4瓶酒平分喝下后,大家都倒下了。等船长醒来,发现海盗船搁浅了。他在航海日志中写到:“......昨天,我正好喝了一瓶.......奉劝大家,开船不喝酒,喝酒别开船.........原创 2018-03-20 19:38:22 · 273 阅读 · 1 评论 -
2-2012年第三届蓝桥杯CC++程序设计本科B组省赛 奇怪的比赛(结果填空)
奇怪的比赛 某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:每位选手需要回答10个问题(其编号为1到10),越后面越有难度。答对的,当前分数翻倍;答错了则扣掉与题号相同的分数(选手必须回答问题,不回答按错误处理)。每位选手都有一个起步的分数为10分。某获胜选手最终得分刚好是100分,如果不让你看比赛过程,你能推断出他(她)哪个题目答对了,哪个题目答错了吗?如果把答对的记为1,答错的记为0,...原创 2018-03-20 20:35:57 · 209 阅读 · 0 评论 -
算法提高 递归倒置字符数组
算法提高 递归倒置字符数组 时间限制:1.0s 内存限制:512.0MB 问题描述 完成一个递归程序,倒置字符数组。并打印实现过程 递归逻辑为: 当字符长度等于1时,直接返回 否则,调换首尾两个字符,在递归地倒置字符数组的剩下部分输入格式 字符数组长度及该数组输出格式 在求解过程中,打印字符数组的变化情况。 最后空一行,在程序结尾处打印倒置后该数组的各个元素。样例...原创 2018-03-04 22:54:03 · 1002 阅读 · 0 评论 -
算法提高 盾神与积木游戏
算法提高 盾神与积木游戏 时间限制:1.0s 内存限制:256.0MB 问题描述 最近的m天盾神都去幼儿园陪小朋友们玩去了~ 每个小朋友都拿到了一些积木,他们各自需要不同数量的积木来拼一些他们想要的东西。但是有的小朋友拿得多,有的小朋友拿得少,有些小朋友需要拿到其他小朋友的积木才能完成他的大作。如果某个小朋友完成了他的作品,那么他就会把自己的作品推倒,而无私地把他的所有积木...原创 2018-03-06 22:37:56 · 171 阅读 · 0 评论 -
算法提高 最长字符序列
算法提高 最长字符序列 时间限制:1.0s 内存限制:256.0MB 最长字符序列问题描述 设x(i), y(i), z(i)表示单个字符,则X={x(1)x(2)……x(m)},Y={y(1)y(2)……y(n)},Z={z(1)z(2)……z(k)},我们称其为字符序列,其中m,n和k分别是字符序列X,Y,Z的长度,括号()中的数字被称作字符序列的下标。 如果存在一...原创 2018-03-13 23:54:21 · 200 阅读 · 0 评论 -
2012 蓝桥杯【初赛试题】微生物增殖
假设有两种微生物 X 和 Y X出生后每隔3分钟分裂一次(数目加倍),Y出生后每隔2分钟分裂一次(数目加倍)。 一个新出生的X,半分钟之后吃掉1个Y,并且,从此开始,每隔1分钟吃1个Y。 现在已知有新出生的 X=10, Y=89,求60分钟后Y的数目。 如果X=10,Y=90 呢? 本题的要求就是写出这两种初始条件下,60分钟后Y的数目。#include&l...原创 2018-03-14 20:11:24 · 345 阅读 · 1 评论 -
算法训练 数列
思路:1)一开始想的就是根据题意作答,但是没有什么好的方法(如果做的话打算多开几份数组存放数据,但要在算出数后不断地排序)。2)打开了锦囊,提示是进制的问题,让我将输入的N转换成2进制,然后将它当作k进制的数并将它转化成十进制。3)下面的代码中需要注意的是:当sum变量为int时,数值会超出范围,但如果改成了long long int 最后一组数会出错!后来笔者改成了unsigned int 类型...原创 2018-02-12 18:37:21 · 608 阅读 · 0 评论 -
算法训练 校门外的树
问题描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数 轴上的每个整数点,即0,1,2,……,L,都种有一棵树。 由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已 知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域...原创 2018-02-16 21:06:45 · 239 阅读 · 0 评论 -
算法训练 一元三次方程求解
算法训练 一元三次方程求解 时间限制:1.0s 内存限制:256.0MB 问题描述 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差的绝对值>=1。要求三个实根。。输入格式 四个实数:a,b,c,d输出格式 由小到大依次在...原创 2018-02-19 12:33:12 · 1288 阅读 · 0 评论 -
算法训练 求先序排列
算法训练 求先序排列 时间限制:1.0s 内存限制:256.0MB 问题描述 给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。输入格式 两行,每行一个字符串,分别表示中序和后序排列输出格式 一个字符串,表示所求先序排列 样例输入 BADC BDCA样例输出ABCD代码:#include<iostream&...原创 2018-02-20 20:43:34 · 439 阅读 · 0 评论 -
算法训练 装箱问题
算法训练 装箱问题 时间限制:1.0s 内存限制:256.0MB 问题描述 有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。 要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入格式 第一行为一个整数,表示箱子容量; 第二行为一个整数,表示有n个物品; 接下来n行,每行一个整数表示这n个...原创 2018-02-26 20:50:00 · 1375 阅读 · 0 评论 -
算法训练 纪念品分组
思路:题目考察的是贪心问题,对贪心的概念模糊不清了,于是又重新回顾了下,贪心还是力度不够啊,回去还要好好刷几题!! 题目的思路就是:1)先将给定的价格分个类2)分别从排好的序列的头部和尾部开始,将它们的价钱相加,如果小于等于给定的w。就表示可以组成一组,否则就单独的将最大的作为一组!!#include<iostream>#include<algorithm&g...原创 2018-02-09 21:44:41 · 953 阅读 · 0 评论 -
蓝桥杯 十进制转换成八进制或二进制 C++
思路: 1)用给出的十进制数去除以8,得到的模数相加。 Decimal Octal Remainder 余数 2)首先这一题属于基础题吧,打算开启我的话唠模式了,今天是2018-1-15,在这里做个计划,将每天写的蓝桥杯题目都提交到CSDN上,一起分析。 3)十进制转换成八进制,就是用十进制的数除以8取模,将所有的模逆向的输出(这里说的笼统,不懂的可以百度一下哈)。 4)这里用的方法原创 2018-01-15 21:13:31 · 1026 阅读 · 0 评论 -
(约瑟夫环)算法训练 筛选号码
直接给自己写的约瑟夫问题的函数吧! 适用条件:当编号是从1开始,数到m 出局。最后只剩下一个的话。(也就是本题的约瑟夫情况)int Joseph(int n, int m) {//这里n是总数,m是数到n的人退出,num为最后剩余的人生 int *Array = new int[n];//动态申请n个单元的数组,每个单元代表一个人 int k = 0; /*当人的原创 2018-01-16 21:56:04 · 267 阅读 · 0 评论 -
算法训练 比较字符串 (蓝桥杯C++)
先上代码吧!#include#include#include#include#include#include#includeusing namespace std;int Differ(string s1, string s2) {//第一个不同字符的差值 int num1, num2; num1 = s1.size(); num2 = s2.size();原创 2018-01-17 22:38:22 · 2135 阅读 · 0 评论 -
算法训练 最长字符串 C++
先直接上代码吧!#include#include#include#include#includeusing namespace std;int main() { string s1,s2; int num1; cin >> s1; for (int i = 1; i 5;i++) { cin >> s2; if (原创 2018-01-18 19:28:45 · 704 阅读 · 0 评论 -
算法训练 字符串逆序 C++
先直接上代码吧:#include#include#include#include#include#includeusing namespace std;int main() { string s1; cin >> s1; stackchar> s; int num = s1.size(); for (int i = 0; i <原创 2018-01-18 19:48:25 · 419 阅读 · 0 评论 -
算法训练 判定数字
直接上代码吧:#include#include#include#include#include#includeusing namespace std;int main() { char i; cin >> i; if (i >= '0'&&i '9') { cout "yes" << endl; } else原创 2018-01-18 20:01:56 · 264 阅读 · 0 评论 -
算法训练 最长字符串
直接上代码吧:#include#include#include#include#includeusing namespace std;int main() { string s1,s2; int num1; cin >> s1; for (int i = 1; i 5;i++) { cin >> s2; if (s原创 2018-01-18 20:07:39 · 285 阅读 · 0 评论 -
算法训练 最大值与最小值的计算
先直接上代码:100分代码#include#include#include#include#include#includeusing namespace std;int main() { int n; int max, min; cin >> max; min=max; for (int i = 1; i 11;i++) {原创 2018-01-18 20:36:20 · 1345 阅读 · 0 评论 -
算法训练 大小写判断 (水题)
#include#include#include#include#includeusing namespace std;int main(){ char c; cin>>c; if(c>='A' && c'Z'){ cout"upper"<<endl; } else cout"lower"<<endl原创 2018-01-21 14:11:35 · 380 阅读 · 0 评论 -
3 算法训练 乘法表(基础题) C++
题目:问题描述 输出九九乘法表。 输出格式 输出格式见下面的样例。乘号用“*”表示。 样例输出 下面给出输出的前几行: 1*1=1 2*1=2 2*2=4 3*1=3 3*2=6 3*3=9 4*1=4 4*2=8 4*3=12 4*4=16 ……思路:应该可以直接用for循环写。两个for,i9,j<=i#include#include#inclu原创 2018-01-21 14:20:45 · 492 阅读 · 0 评论 -
算法训练 奇偶判断(水题)
思考:题目虽然简单,但笔者还是拿出来,居然有点忘记三目运算了#includeusing namespace std;int main(){int x;cin>>x;cout2)?"odd":"even")<<endl;return 0;}原创 2018-01-21 14:37:26 · 302 阅读 · 0 评论 -
算法训练 矩阵加法 C++
思路:逻辑思路不难,就是输入两个矩阵,求它们的和并将它们输出!!如果没有将题目看清楚可能提交n次都报错!!结果一看给的测试数据:就给一个,还有点大!! 这时最好的方法就是再仔细将题目读一遍!!记住:每行后面不能有多余的空格!好了,不多说了!上代码:#include#include#include#include#include#includeusing namespace std原创 2018-01-27 20:18:40 · 3277 阅读 · 0 评论 -
算法训练 简单加法(基本型)
思路:写一个Carry函数,形参的变量是一个int类型的数,判断这个数是不是符合简单加法,如果是的话计数器加1!! 直接将三个数各个位上的数相加,直接判断是否大于等于10就行!!(☆_☆)/~~直接上代码:#include#include#include#include#include#includeusing namespace std;bool Carry(int原创 2018-01-28 17:20:35 · 991 阅读 · 0 评论 -
算法训练 数组查找及替换
思路:给你一组数和一个数b,将它们当中能够整除b的数去除掉,并将去除后剩余的数进行排序,然后将排好的数输出,这里要注意的是如果有ASCII正好在65到90之间的就将它们按照大写字母输出(这里用到了强制类型转换)不多说了上代码:#include#include#include#include#include#include#includeusing namespace std;原创 2018-01-29 21:41:56 · 1002 阅读 · 0 评论 -
算法训练 调和数列问题
思路: 1)1/2+1/3+1/4+…+1/(n+1)可以用递归去写,笔者直接用for循环写了。 2)写一个Sum()函数,返回n的! 3)在main函数里用while循环实现边输入边输出。代码:#includeusing namespace std;int Sum(double t) {//当总和大于形参时返回n double sum=0; double i原创 2018-01-30 20:40:34 · 229 阅读 · 0 评论 -
算法训练 数组排序去重
思路:题目考察排序和去重 排序选用的是熟悉的冒泡排序, 去重在最后输出的时候去重(没有用数组单元的覆盖去重)。上代码吧:#include#include#include#include#include#include#includeusing namespace std;int main() { int array[10]; for (int i =原创 2018-01-30 21:40:26 · 513 阅读 · 0 评论 -
算法训练 接水问题(模拟simulation)
思路: 1)现将题目通读一下:给你n个人,m个水龙头。这里所有人都是按顺序打水的,每人打水所需的时间都是限定好的(嘿嘿,这里可能是有些人的水壶有大号的和小号的),当打水的人中有人打好后,立即有人替补且没有时间差!让我们求所需的总时间!2)下面分几个步骤去求总时间!! 第一:如何模拟使用水龙头打水的人的情况?(代码中用Min函数实现的) 因为每秒供水量为1,我们是可以想象用循环去...原创 2018-01-31 22:22:09 · 2055 阅读 · 7 评论