自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 蓝桥杯训练-3.25

2019年天梯赛模拟题集-赛后总结L1-1 帅到没朋友 (20 分)当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为太帅而没有朋友。本题就要求你找出那些帅到没有朋友的人。输入格式:输入第一行给出一个正整数N(≤100),是已知朋友圈的个数;随后N行,每行首先给出一个正整数K(≤1000),为朋友圈中的人数,然后列出一个朋友圈内的所有人——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔;之后给出一个正整数M(≤10000),为待查询的人数;随后一行中列出M

2021-03-25 23:35:49 456

原创 蓝桥杯训练-3.21

蓝桥杯训练-3.21代码练习• 一元三次方程求解问题描述有形如: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数据规模和约定|

2021-03-22 00:07:18 650

原创 蓝桥杯训练-3.20

蓝桥杯训练-3.20代码训练• 装箱问题-DP问题描述  有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。  要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入格式第一行为一个整数,表示箱子容量;  第二行为一个整数,表示有n个物品;  接下来n行,每行一个整数表示这n个物品的各自体积。输出格式一个整数,表示箱子剩余空间。样例输入  24  6  8  3  12  7  9  7样

2021-03-21 16:12:58 211

原创 蓝桥杯练习-3.17

蓝桥杯练习-3.17代码练习• 旅行家的预算-贪心问题描述一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的)。给定两个城市之间的距离D1、汽车油箱的容量C(以升为单位)、每升汽油能行驶的距离D2、出发点每升汽油价格P和沿途油站数N(N可以为零),油站i离出发点的距离Di、每升汽油价格Pi(i=1,2,……N)。计算结果四舍五入至小数点后两位。如果无法到达目的地,则输出“No Solution”。输入格式第一行为4个实数D1、C、D2、P与一个非负整数N;  接下来N

2021-03-19 09:20:12 371

原创 蓝桥杯训练-3.18

蓝桥杯训练-3.18代码练习• 集合运算资源限制时间限制:1.0s 内存限制:512.0MB问题描述给出两个整数集合A、B,求出他们的交集、并集以及B在A中的余集。输入格式第一行为一个整数n,表示集合A中的元素个数。  第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素。  第三行为一个整数m,表示集合B中的元素个数。  第四行有m个互不相同的用空格隔开的整数,表示集合B中的元素。  集合中的所有元素均为int范围内的整数,n、m<=1000。输出格式第一行按从小

2021-03-19 09:16:13 197

原创 蓝桥杯训练-3.16

蓝桥杯训练-3.16代码练习• 幂方分解问题描述任何一个正整数都可以用2的幂次方表示。例如:  137=27+23+20  同时约定方次用括号来表示,即ab 可表示为a(b)。  由此可知,137可表示为:  2(7)+2(3)+2(0)  进一步:7= 22+2+20 (21用2表示)  3=2+20  所以最后137可表示为:  2(2(2)+2+2(0))+2(2+2(0))+2(0)  又如:  1315=210 +28 +25 +2+1  所以1315最后可表示为:

2021-03-17 00:22:21 194

原创 蓝桥杯训练-3.14

蓝桥杯训练-3.14代码练习• H 日志统计Description小明维护着一个程序员论坛。现在他收集了一份"点赞"日志,日志共有N行。其中每一行的格式是:ts id表示在ts时刻编号id的帖子收到一个"赞"。现在小明想统计有哪些帖子曾经是"热帖"。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是"热帖"。具体来说,如果存在某个时刻T满足该帖在[T, T+D)这段时间内(注意是左闭右开区间)收到不少于K个赞,该帖就曾是"热帖"。给定日志,请你帮助小明统计出

2021-03-14 23:58:26 181 1

原创 蓝桥杯练习-3.13

蓝桥杯练习-3.13视频学习第十二届蓝桥杯备赛直播公开课• 人物相关性的分析-<滑动窗口>【问题描述】小明正在分析一本小说中的人物相关性。他想知道在小说中 Alice 和 Bob有多少次同时出现。更准确的说,小明定义 Alice 和 Bob“同时出现”的意思是:在小说文本中 Alice 和 Bob 之间不超过 K 个字符。例如以下文本:This is a story about Alice and Bob. Alice wants to send a private messag

2021-03-14 21:20:34 417

原创 蓝桥杯练习-3.10

蓝桥杯练习-3.10代码练习• 龟兔赛跑思路本题的关键是当兔子领先乌龟t米时,我们并不需要像传统一样的,让兔子走的路程停止,而乌龟继续行走s秒。而是可以让兔子退后v1×s的路程,而当乌龟在s秒内行走的时候,兔子相当于在补之前后退的距离,当s秒过去了,乌龟走了s秒,而兔子刚好回到了原位,这就相当于兔子在这段时间内休息。代码实现#include <iostream>using namespace std;int main(){ int v1, v2, t, s, l;//

2021-03-13 17:14:34 90

原创 蓝桥杯练习-3.12

蓝桥杯练习-3.12代码练习• 高精度加法资源限制时间限制:1.0s 内存限制:512.0MB问题描述输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。算法描述由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。  定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。  计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即和的十位数)存

2021-03-13 16:48:30 187

原创 蓝桥杯练习-3.11

蓝桥杯练习-3.11代码练习• 回形取数问题描述回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。输入格式输入第一行是两个不超过200的正整数m, n,表示矩阵的行和列。接下来m行每行n个整数,表示这个矩阵。输出格式输出只有一行,共mn个数,为输入矩阵回形取数得到的结果。数之间用一个空格分隔,行末不要有多余的空格。样例输入3 31 2 34 5 67 8 9样例输出1 4 7 8 9 6 3 2 5思路本题理解起来比较

2021-03-12 09:19:27 466

原创 蓝桥杯练习-3.9

蓝桥杯练习-3.9视频学习详细描述欧几里得算法• 欧几里得算法欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数。定理:两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数。gcd(a,b) = gcd(b,a mod b)要算 大数a 和 小数b 的最大公约数转化为求 小数b 和 余数a mod b的最大公约数。可以一直递归下去,直到不产生余数,即当b == 0时,a就是最大公约数。int gcd(int a,int b){ if(b == 0)

2021-03-10 17:30:15 192

原创 蓝桥杯练习-3.8

蓝桥杯练习-3.8• G 完全二叉树的权值Description给定一棵包含N个节点的完全二叉树,树上每个节点都有一个权值,按从上到下、从左到右的顺序依次是A1,A2,· · ·AN,如下图所示:现在小明要把相同深度的节点的权值加在一起,他想知道哪个深度的节点权值之和最大?如果有多个深度的权值和同为最大,请你输出其中最小的深度。注:根的深度是1。Input第一行包含一个整数N。第二行包含N个整数A1,A2,· · ·ANOutput输出一个整数代表答案。Sample Input

2021-03-09 14:03:16 200

原创 蓝桥杯练习-3.7

蓝桥杯练习-3.7代码练习▪ FJ的字符串问题描述最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三角函数基本功。所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们的计算能力。  不妨设  An=sin(1–sin(2+sin(3–sin(4+…sin(n))…)  Sn=(…(A1+n)A2+n-1)A3+…+2)An+1  FJ想让奶牛们计算Sn的值,请你帮助FJ打印出Sn的完整表达式,以方便奶牛们做题。输入格式仅有一个数:N<20

2021-03-07 23:58:34 441

原创 蓝桥杯练习-3.6

蓝桥杯练习-3.6代码练习完美的代价问题描述回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。  交换的定义是:交换两个相邻的字符  例如mamad  第一次交换 ad : mamda  第二次交换 md : madma  第三次交换 ma : madam (回文!完美!)输入格式第一行是一个整数N,表示接下来的字符串的长度(N <= 8000)  第二

2021-03-07 19:52:57 851

原创 蓝桥杯练习-3.4

蓝桥杯练习-3.4视频学习2019年蓝桥杯训练营(C++) 13.1背包问题视频讲解多重背包问题有N种物品,第i种物品的体积是weight[i],价值是value[i],每种物品的数量都是有限的,为ni,现有容量为V的背包,请你放入若干物品,在总体积不超过V的条件下,是总价值尽可能大。朴素算法可以把ni个物品逐个拆分,则得到∑ni物品,原问题转化为01背包求解,时间复杂度是O(V∑n)。我们也可以在转移的过程中枚举k,代表第i个物品选取的数列,和01背包思想一样,有如下转移:dp[i][j]

2021-03-06 15:25:24 86

原创 蓝桥杯练习-3.5

蓝桥杯练习-3.5视频学习2019年蓝桥杯训练营(C++) 13.1背包问题视频讲解完全背包问题当前有N种物品,第i种物品的体积是weight[i],价值是value[i]。每种物品的数量都是无限的,可以任意选择若干件。现有容量为V的背包。请你放入若干物品,使总体积不超过V,并且总价值尽可能大。可以用多重背包的思想来解决完全背包:for (int i = 1; i <= N; i++) { for (int j = 0; j <= V; j++) { for (int k

2021-03-06 15:23:16 87

原创 蓝桥杯练习-3.3

蓝桥杯练习-3.3代码练习2n皇后问题问题描述给定一个n*n的棋盘,棋盘中有一些位置不能放皇后。现在要向棋盘中放入n个黑皇后和n个白皇后,使任意的两个黑皇后都不在同一行、同一列或同一条对角线上,任意的两个白皇后都不在同一行、同一列或同一条对角线上。问总共有多少种放法?n小于等于8。输入格式输入的第一行为一个整数n,表示棋盘的大小。  接下来n行,每行n个0或1的整数,如果一个整数为1,表示对应的位置可以放皇后,如果一个整数为0,表示对应的位置不可以放皇后。输出格式输出一个整数,表示总共有多

2021-03-03 23:50:11 201 1

原创 蓝桥杯练习-3.2

蓝桥杯练习-3.2视频学习2019年蓝桥杯训练营(C++) 12.4常见动态规划模型练习题• 最大子矩阵和最大子矩阵和问题。给定m行n列的整数矩阵A,求矩阵A的一个子矩阵,使其元素之和最大。思路:动态规划,是二维的最大子段和,将二维数组降维成一维数组然后按最大子段和的做法写,也就是将几行二维数组压缩成一维数组来写。代码实现:#include <iostream>#include <algorithm>#include <cstdio>using na

2021-03-03 15:40:12 179 2

原创 蓝桥杯-2.28

蓝桥杯-2.28代码学习圆的面积思路:注意浮点数的输入,定值可以再头文件先声明#include <iostream>using namespace std;#define PI 3.14159265358979323int main(){ int r; double s; cin >> r; printf("%.7f",PI * r * r); return 0;}视频学习视频名称及链接:2019年蓝桥杯训练营(C++

2021-02-28 23:36:55 139

原创 蓝桥杯练习-2.26

蓝桥杯练习-2.26代码学习字符串对比思路:此题主要考察c++中字符串的一些应用c++中可以直接定义一个空字符串,然后直接读入string s1;cin >> s1;也可以用getline()读入接受一个字符串,可以接收空格并输出string str;getline(cin,str);都需包含“#include”获得字符串长度len = s1.size();len = s1.length();俩种方法然后根据题目要求运用字符串长度函数和if语句,注意简单的题

2021-02-27 01:52:05 87

原创 蓝桥杯练习- 2.25

蓝桥杯练习- 2.25代码练习Fibonacci数列解析:题目中要求得到Fn除以10007的余数是多少,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。我们知道Fibonacci数列的通项公式为Fn=Fn−1+Fn−2Fn=Fn-1+Fn-2Fn=Fn−1+Fn−2而这里要求余数,但是先求出Fn再取余,还是算出了Fn的精确值,浪费了时间,所以这里可以用到一个余数定理:A与B的和除以C的余数,等于A,

2021-02-25 23:36:00 117

原创 蓝桥杯练习-2.24

蓝桥杯练习-2.24代码练习特殊回文数思路:一个比较好的思路就是,用while将该数的每个位上的数得出来,然后存进数组中,将第一位和最后一位进行比较,看是否相等,然后一直比较到中间,同时设一个变量从0计数,以此来判断。代码:#include <iostream>#include <cmath>#include <cstdio>using namespace std;bool judge(int x,int n){ int i = 0, k =

2021-02-25 17:56:30 110

原创 学习记录-2.23

深搜的剪枝策略DFS本此主要是介绍在我们DFS也就是搜索的过程中,会形成一颗搜索树。但是,我们会发现某个结点对应的子树的状态都不是我们要的结果,那么我们其实没有必要对这个分支进行搜索,砍掉这个子树,就是剪枝。我们在搜索过程中,一旦发现某些状态无论如何都不能找到最终的解,就可以将其“剪枝”了。实现可行性剪枝例如:从0,1,2…,29这30个数中选8(设其为k)个数出来,使其和为200(设为sum)我们就可以在原有搜索基础上进行可行性剪枝,首先是 cnt(当前一共选的数) > k,那么肯定不是

2021-02-24 14:15:16 74

原创 学习记录-2.22

抽象深度优先搜索-DFS相较于深度优先搜索的区别是,之前的dfs是容易想象出搜索过程的,例如迷宫等问题,抽象则是不容易想象搜索过程的DFS。需要注意需要想象搜索树抽象DFS-从n个整数中选K个数,和为sum此为搜索树的样子(要在脑子中生成)#include <iostream>using namespace std;int n, k, sum, ans;int a[40];void dfs(int i, int cnt, int s)//i表示当前正在选取第几个数,cnt表示

2021-02-23 12:27:46 83

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除