
蓝桥杯C语言
霖纪年
这个作者很懒,什么都没留下…
展开
-
蓝桥杯练习-蛇形矩阵
蛇形矩阵题目蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。输出对于每一组数据,输出一个N行的蛇形矩阵。两组输出之间不要额外的空行。矩阵三角中同一行的数字用一个空格分开。行尾不要多余的空格。案例样例输入5样例输出1 3 6 10 152 5 9 144 8 137 1211分析从上图可以分析,黄色代表两数之差,设一个数字是i行j列的话,首先确定每行的第一个数字;可以知道第i行的首位数字:num=i-1+a,a是上一行首位数字接着确定每行后面数字的原创 2022-01-25 16:12:15 · 627 阅读 · 0 评论 -
字符串逆序输出和TOM数
Tom数题目正整数的各位数字之和被Tom称为Tom数。求输入数(<2^32)的Tom数!输入:每行一个整数(<2^32).输出:每行一个输出,对应该数的各位数之和.分析本题可以用输入整数取余来求每个数字的数字和,但我觉得通过字符串来求是最容易的#include<stdio.h>#include<string.h>int main(){ int sum; char s[11]; while(~scanf("%s",&a原创 2022-01-24 16:00:03 · 467 阅读 · 0 评论 -
蓝桥杯练习-印章
印章题目:共有n种图案的印章,每种图案的出现概率相同。小A买了m张印章,求小A集齐n种印章的概率分析:这是动态分析;题目说了小A买了m张,要凑齐n种,那么我们就设:a[i] [j]表示买 i 张凑齐 j 种印章的概率。题目中有 n 种印章, 每种概率是 1/n;先来看i<j的时候:因为买 i 张最多只能凑齐 i 种,所以这种情况概率为0再来看j=1的时候:i=1:dp[i] [1]表示的意思是买 i 张凑齐 1 种的概率,很明显 i == 1 && j原创 2022-01-22 21:59:09 · 825 阅读 · 0 评论 -
蓝桥杯练习--分糖果
分糖果题目有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏:每个小朋友都把自己的糖果分一半给左手边的孩子。一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而变成偶数。反复进行这个游戏,直到所有小朋友的糖果数都相同为止。你的任务是预测在已知的初始糖果情形下,老师一共需要补发多少个糖果。输入程序首先读入一个整数N(2< N< 100),表示小朋友的人数。接着是一行用空格分开的N个偶数(每个偶数不大于1000,不小于2)输出程序首先读入一原创 2022-01-20 20:57:18 · 871 阅读 · 0 评论 -
蓝桥杯-聪明的美食家
聪明的美食家题目如果有人认为吃东西只需要嘴巴,那就错了。都知道舌头有这么一个特性,“由简入奢易,由奢如简难”(据好事者考究,此规律也适合许多其他情况)。具体而言,如果是甜食,当你吃的食物不如前面刚吃过的东西甜,就很不爽了。大宝是一个聪明的美食家,当然深谙此道。一次他来到某小吃一条街,准备从街的一头吃到另一头。为了吃得爽,他大费周章,得到了各种食物的“美味度”。他拒绝不爽的经历,不走回头路而且还要爽歪歪(爽的次数尽量多)。输入两行数据。 第一行为一个整数n,表示小吃街上小吃的数量 第二行为n原创 2022-01-19 21:32:01 · 401 阅读 · 0 评论 -
蓝桥杯练习数对
数对题目:编写一个程序,该程序从用户读入一个整数,然后列出所有的数对,每个数对的乘积即为该数。输出:输出有若干行,每一行是一个乘法式子。(注意:运算符号与数字之间有一个空格)分析这相当于枚举的思想,直接两层循环加一个判断:判断i*j==n是否成立#include<stdio.h>int main(){ int n,i,j; scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j&原创 2022-01-18 21:07:11 · 314 阅读 · 0 评论 -
蓝桥杯练习-DNA图形
画DNA题目:小强从小就喜欢生命科学,他总是好奇花草鸟兽从哪里来的。终于, 小强上中学了,接触到了神圣的名词–DNA.它有一个双螺旋的结构。输入输入包含多组测试数据。第一个整数N(N<=15),N表示组数,每组数据包含两个整数a,b。a表示一个单位的DNA串的行数,a为奇数且 3<=a<=39。b表示重复度(1<=b<=20)。样例输入23 15 4样例输出X X XX XX X X X X X XX X X X X X原创 2022-01-17 21:31:28 · 770 阅读 · 0 评论 -
蓝桥杯练习-母牛数量问题
母牛的故事题目:有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?分析由题目可以以下数量关系年份123456789数量123469131928可以看的关系f(n)=f(n-1)+f(n-3)可以递归函数来求解输入输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。n=0表示输入数据的结束,原创 2022-01-16 19:59:25 · 241 阅读 · 0 评论 -
蓝桥杯练习-判断IP地址
蓝桥杯练习原创 2022-01-15 20:49:02 · 1692 阅读 · 0 评论 -
蓝桥杯练习--用最少花费爬楼梯
动态规划原创 2022-01-14 20:18:34 · 282 阅读 · 0 评论 -
爬楼梯求解
爬楼梯题目:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶分析这是动态分析设i为第i层,则a[i]可以表示为第i层爬楼梯的方法数目,则a[原创 2022-01-13 17:08:28 · 158 阅读 · 0 评论 -
蓝桥杯 拿金币
1、拿金币题目: 有一个N x N的方格,每一个格子都有一些金币,只要站在格子里就能拿到里面的金币。你站在最左上角的格子里,每次可以从一个格子走到它右边或下边的格子里。请问如何走才能拿到最多的金币。分析该题目考察动态规划,我们可以就利用题中的二维数组。(i,j)代表坐标,x[i][j]代表到达坐标(i,j)时的最优解,即拿到最多的金币。.找到数组元素之间的关系。上个数字与本次数字的关系意思就是在n*n的位置中,每个位置为累加最大值的和在下面的循环中,if条件语句是来判断第一层和第一列,而其他就原创 2022-01-09 15:43:49 · 491 阅读 · 0 评论 -
Fibonacci数列求余
题目:Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入n值输出一行,包含一个整数,表示Fn除以10007的余数在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。分析在循环中:f3=f1+f2直接计算余数通过f3求除以10007来求解余数#in原创 2022-01-08 20:36:47 · 600 阅读 · 0 评论 -
输出01数字,字母图形
1、字母图形题目:利用字母可以组成一些美丽的图形,下面给出了一个例子:ABCDEFGBABCDEFCBABCDEDCBABCDEDCBABC这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。输出n行,每个m个字符,为你的图形。分析 观察图像,可以看出每行的规律类似DCBABCD这样的规律 A在ASCLL码值对应的数值位65,大循环是控制行,第一个循环是输出类似CBA这样的字母 第二个循环是输出ABC..这样的字母。 循环原创 2022-01-07 10:50:45 · 3553 阅读 · 0 评论 -
查找整数练习
1、查找整数2、数字特征查找整数题目:给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。输入格式: 第一行包含一个整数n。 第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。 第三行包含一个整数a,为待查找的数。 输入格式 第一行包含一个整数n。 第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。 第三行包含一个整数a,为待查找的数。 分析 查找整数首先用if条件语句判断..原创 2022-01-06 20:39:53 · 437 阅读 · 0 评论 -
蓝桥杯C语言学习练习一汇总
蓝桥杯C语言代码学习及练习原创 2022-01-05 12:57:10 · 2054 阅读 · 0 评论