1 Yuhan の Blog

尚未进行身份认证

Spring Song

等级
TA的排名 1w+

蓝桥杯 PREV-28 地宫取宝(dp)

题目链接:http://lx.lanqiao.cn/problem.page?gpid=T120思路:1.记dp[i][j][a][b]dp[i][j][a][b]dp[i][j][a][b]为走到坐标为(i,j)(i,j)(i,j)位置后,手上有aaa件物品且所有物品中最大值为bbb的方案数;2.假设我们现在从(a,b)(a,b)(a,b)走到(x,y)(x,y)(x,y)(这两个...

2020-03-31 13:21:23

蓝桥杯 PREV-43 拉马车(stl的使用)

题目链接:http://lx.lanqiao.cn/problem.page?gpid=T447思路:1.我们可以发现出牌者的牌是遵循队列规则、而桌上的牌是遵循栈规则的;2.用map容器维护一下桌上是否有某张牌,剩下的模拟即可;代码:#include<bits/stdc++.h>using namespace std;queue<char> qu...

2020-03-28 21:08:00

蓝桥杯 第十一届软件类校内模拟赛——C/C++程序设计

第一题思路:这题是求约数个数,数据不大可以暴力,复杂度O(n)O(n)O(n);但求约数有O(n)O(\sqrt{n})O(n​)的算法,见如下代码:代码:#include<bits/stdc++.h>using namespace std;int divisor(int n) { int rs = 0; for(int i = 1; i * i <= ...

2020-03-21 18:50:07

蓝桥杯 PREV-19 九宫重排(bfs)

题目链接:http://lx.lanqiao.cn/problem.page?gpid=T42思路:既然是求最少次数,那就用bfs搜索;每次寻找下一种可能的状态,用map容器记录即可;代码:#pragma GCC optimize(2)#include<bits/stdc++.h>using namespace std;bool tag[10][10];...

2020-03-20 17:20:16

蓝桥杯 PREV-17 约数倍数选卡片(对抗搜索)

题目链接:http://lx.lanqiao.cn/problem.page?gpid=T40思路:1.这是博弈问题的一般方法,用dfs进行对抗搜索,遍历所有可能,双方在每一步都选取最优步骤;2.单纯dfs会超时,我们知道约大的数,它的约数+倍数个数就相对可能越少,因此我们优先遍历大数即可;代码:#include<bits/stdc++.h>using name...

2020-03-16 15:44:09

蓝桥杯 PREV-14 高僧斗法(Nim游戏)

题目链接:http://lx.lanqiao.cn/problem.page?gpid=T37思路:1.假设从111开始给这nnn个小和尚从左往右编号,那么编号为1,2,3,...,n1,2,3,...,n1,2,3,...,n;2.我们按照一奇一偶的方式给他们组队,结果为(1,2),(3,4),...,(n−1,n)(1,2),(3,4),...,(n-1,n)(1,2),(3,4...

2020-03-10 18:26:51

HDU 1850 Being a Good Boy in Spring Festival(Nim游戏)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1850思路:1.Nim游戏的N-position(即先手必胜态)为nnn堆石子的异或和不为0;2.反之必败态为nnn堆石子的异或和为0,那么就需要给对手创造必败态;3.遍历每一堆扑克牌,假设当前堆扑克牌数量为aaa,算出其它n−1n-1n−1堆扑克牌数量的异或和为bbb,我们需要做的即让...

2020-03-10 17:17:30

蓝桥杯 PREV-13 网络寻路(dfs)

题目链接:http://lx.lanqiao.cn/problem.page?gpid=T36思路:每一个点都可以作为起点,用dfs遍历路径条数;代码:#include<bits/stdc++.h>using namespace std;int n, m, s;long long ans;vector<int> G[10005];bool v...

2020-03-09 14:12:11

团体程序设计天梯赛 L3-021 神坛(极角排序)

题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805046577840128思路:1.一共n个点,对于每一个点我们都可以将它作为顶点,那么此点和其它n-1个点就会组成n-1个向量;2.n-1个向量中,我们任意选取两个向量都可以满足“选取三块石头”这个条件,但是我们现在的目标是面积最小,因此我们需要...

2020-03-08 15:42:27

洛谷 P1372 又是毕业季I(公约数)

题目链接:https://www.luogu.com.cn/problem/P1372思路:假设默契值为xxx,那么根据贪心的想法,这kkk个人的序号为:x,2x,3x,...,kxx,2x,3x,...,kxx,2x,3x,...,kx;根据题意我们知道kx≤nkx\leq nkx≤n,即x≤nkx\leq \frac{n}{k}x≤kn​;代码:#include<bi...

2020-03-07 16:48:46

洛谷 P1865 A % B Problem(埃氏筛法)

题目链接:https://www.luogu.com.cn/problem/P1865思路:用埃氏筛法将[1,m][1,m][1,m]间的素数全部筛选出来,再用前缀和数组维护一下即可;代码:#include<bits/stdc++.h>using namespace std;const int maxn = 1e6 + 5;bool prime[maxn];...

2020-03-07 16:17:51

洛谷 P1060 开心的金明(0/1背包)

题目链接:https://www.luogu.com.cn/problem/P1060思路:背包裸题代码:#include<bits/stdc++.h>using namespace std;const int maxn = 3e4 + 5;int n, m, v[maxn], p[maxn];int dp[maxn];int main() {#if...

2020-03-05 14:44:36

2020牛客寒假算法基础集训营2

题目链接:https://ac.nowcoder.com/acm/contest/3003A题思路:求出三种情况的最多获胜局数即可代码:#include<bits/stdc++.h>using namespace std;int main() {#ifdef MyTest freopen("Sakura.txt", "r", stdin);#else...

2020-03-03 16:43:47

蓝桥杯 BEGIN-4 Fibonacci数列

题目链接:http://lx.lanqiao.cn/problem.page?gpid=T4思路:接近蓝桥杯比赛了…最近有一些同学过来问我为什么java代码提交蓝桥的OJ报运行错误,而且都是拿这题来问的…所以写这篇就是想提醒一下初次使用OJ的java选手吧(虽然我是用C++的QAQ)1.在提交代码时不能加入package语句;2.类名的定义必须是public class Main...

2020-03-02 14:53:41

HDU 2037 今年暑假不AC

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2037思路:贪心思想,将节目结束时间从小到大排序,依次选取可以观看的节目;代码:#include<bits/stdc++.h>using namespace std;struct Pro { int s, e; bool operator < ( Pro ...

2020-03-01 19:15:58

蓝桥杯 PREV-25 城市建设(最小生成树)

题目链接:PREV-25 城市建设思路:1.先考虑没有码头的情况,使用kruskal算得最小生成树,但是需要检查一下所有点之间是否连通;2.而后考虑建码头的情况,所谓建码头的城市均可以互相连通,我们可以设立一个虚点,城市到虚点的边权即是建造码头的费用,再使用kruskal算法算得最小生成树的最小权值;3.我们取两种情况的最小值(注意第一种情况要保证连通);4.在写最小生成树的时候...

2020-02-29 17:32:17

蓝桥杯 PREV-42 九宫幻方(dfs)

题目链接:PREV-42 九宫幻方思路:直接dfs搜索所有可能,记录能形成幻方的矩阵即可;代码:#include<bits/stdc++.h>using namespace std;int cnt, vst[10];vector<vector<int> > mat(3, vector<int>(3)), ans(3, ve...

2020-02-29 16:02:22

蓝桥杯 PREV-35 正则问题

题目链接:PREV-35 正则问题思路:题目不解释一下压根不知道x () |这些符号是做什么的…简单解释:x就是代表一个字符,题目要求最长字符数;()就是起到计算中的优先级作用;|代表或,既然取最长我们就需要找到或运算左右最长的字符;举例:1.xxx|xx就是3;2.(xxx)xx是5;3.(xxx|x)xx也是5;知道意思之后使用递归即可求得最长字符串;代码:...

2020-02-28 20:01:40

蓝桥杯 PREV-50 对局匹配(贪心)

题目链接:PREV-50 对局匹配思路:1.我们将分数模kkk相同的放在一组,我们知道只有同一组的人才有可能相互匹配到;2.我们遍历每一组,按公差为kkk的分数顺序将该分数的人数组成一个序列,例如所有分数为[2,2,4,5,3,4,5,1,8][2,2,4,5,3,4,5,1,8][2,2,4,5,3,4,5,1,8],kkk为222,则模kkk为000的一组分数为[2,2,4,4,...

2020-02-27 15:42:16

蓝桥杯 PREV-44 青蛙跳杯子(bfs)

题目链接:PREV-44 青蛙跳杯子思路:我们采用搜索的方式,寻找每一种情况的所有下一种可能情况,并用map标记已经遍历过的情况;像此种类似寻求最短路的搜索用bfs更加高效;代码:#include<bits/stdc++.h>using namespace std;map<string, int> vst;string s, t;queue&...

2020-02-27 13:34:58

查看更多

勋章 我的勋章
  • 签到王者
    签到王者
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。