蓝桥杯
题目练习
为君倾此杯
这个作者很懒,什么都没留下…
展开
-
格子刷油漆
题目描述解题视频#include <iostream>using namespace std;const int M=1000000007;typedef long long ll;int main(){ int i,n; cin>>n; ll a[1010],b[1010]; b[1]=1; for(i=2;i<...原创 2020-04-09 21:32:13 · 119 阅读 · 0 评论 -
小 C 的数论习题
题目样例输入:6 6 61 24 24样例输出:624CODE:#include <iostream>using namespace std;typedef long long ll;int main(){ int a,b,c; cin>>a>>b>>c; int A=23,B=233,C=23...原创 2020-01-31 15:20:26 · 185 阅读 · 0 评论 -
走方格
题目链接题意:从(1,1)走到(n,m),不能走行数和列数都是偶数的,求有多少种方案。思路:深搜+记忆搜索#include <iostream>#include <cstring>#include <algorithm>using namespace std;int n,m;int d[2][2]= {{1,0},{0,1}};int g[50][50];int dfs(int x,int y){ if(x&1||y&1)原创 2020-09-28 19:14:48 · 183 阅读 · 0 评论 -
生命之树
题目链接题意:从树中求一个最大连通子块,保证这个连通子块的权值和最大。思路:邻接矩阵+dfs#include <iostream>#include <vector>#define inf -0x3f3f3f3fusing namespace std;const int maxn=1e5+10;typedef int ll;int n;ll w[maxn],dw[maxn];ll ans;vector<ll> g[maxn];void dfs(in原创 2020-09-27 20:52:50 · 81 阅读 · 0 评论 -
垒骰子
题目链接题意:把 n个骰子垒成一个柱子,但是有 m对面不能贴在一起,问有几种方式。思路一:递归。将所有的情况遍历一遍。#include <iostream>#include <cstring>#include <algorithm>using namespace std;typedef long long ll;const ll mod=1e9+7;int n,m;int op[7],dl[7][7];void init(){ op原创 2020-09-25 19:58:13 · 248 阅读 · 0 评论 -
大臣的旅费
题目链接题意:求一个树中两点之间的最大距离。思路:等于求树的直径。先从根开始找离根最远的那个点,树的直径一定是从这个点出发到另一个点的距离。然后再从这个点找离这个点最远的点,这两个点的距离就是树的直径。只需要两次深搜遍历。#include <iostream>#include <vector>#include <algorithm>#include <cstring>using namespace std;typedef long lo原创 2020-09-22 18:30:01 · 87 阅读 · 0 评论 -
小朋友排队
题目链接题意:将无序的数列按从小到大排排序,只能和相邻的数交换,求每个数交换的次数。思路:每个数交换的次数 = 左边比它大的数 + 右边比它小的数。因为只能和相邻的数交换,左边比它大的数一定会到这个数的右边,所以左边比它大的数一定会和这个数发生一次交换;同理右边也一样。首先是暴力解法,复杂度为O(n^2),只能通过30%。#include <iostream>#include <cstring>using namespace std;const int maxn=1原创 2020-09-21 19:08:08 · 109 阅读 · 0 评论 -
波动数列
题目链接题意:求长度为 n 、和为 s, 而且后一项总是比前一项增加a或者减少b的整数数列可能有多少种。1、n*x+n*(n-1)/2*a=s ---> x=(s-n*(n-1)/2*a)/n 首项最小的时候。n*x-n*(n-1)/2*b=s ---> x=(s+n*(n-1)/2*b)/n 首项最大的时候。通过枚举首项,通过深搜找出符合的数组。2、通过 a的数量可以得出 b的数量。因为有的 a,b的数量无论如何都不可能成立,所以可以进行剪枝。3、原创 2020-09-15 18:16:36 · 230 阅读 · 0 评论 -
第八届蓝桥杯大赛省赛-C语言B组
等差素数列2,3,5,7,11,13,…是素数序列。类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。上边的数列公差为30,长度为6。2004年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。这是数论领域一项惊人的成果!有这一理论为基础,请你借助手中的计算机,满怀信心地搜索:长度为10的等差素数列,其公差最小值是多少?注意:需要提交...原创 2020-04-28 21:12:01 · 555 阅读 · 1 评论 -
第七届蓝桥杯大赛省赛-C语言B组
煤球数目有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),…如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。CODE:#include <iostream>using namespace std;/...原创 2020-03-18 14:14:34 · 450 阅读 · 0 评论