自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

麦片老板的博客

一个正在努力学习的人的博客

  • 博客(49)
  • 收藏
  • 关注

原创 react-app-env.d.ts是什么?

不起眼的react-app-env.d.ts的作用是什么???

2023-11-06 16:40:45 538

原创 Mac下使用nvm,执行微信小程序自定义处理命令失败

默认终端zsh,nvm环境下,启动微信小程序自定义处理命令失败

2023-11-03 12:31:50 676

原创 Linux-使用命令行建立Wi-Fi链接

Linux使用终端建立Wi-Fi连接

2023-11-03 12:18:40 398

原创 字符串算法:字典树trie

字典树trie1. 原理先看一张图看不懂很正常如果你看懂了,那么原理就可以直接跳过比如说我们现在有几个字符串ininninttotentea我们想知道te是哪几个字符串的前缀?这个时候我们显然可以一个一个去比较,但是这样的效率有点低,我们也可以想到用字符串hash去比较,但是这样的效率还是有点低这个时候字典树就排上用场了字典树 说白了 就是一个字典和我们平时查英语的字典一样,比如我们现在要去查一个单词hello我们首先第一个动作一定是放到 H 开头的那一页再去放到

2021-07-10 22:32:33 152

原创 字符串hash

字符串hash原理我的理解是:这是一种很玄学的字符串匹配算法比如我们现在有一个字符串:str = "abcde"通过一个hash函数,我们假设为int mhash() [为什么要写成mhash?因为hash()在库函数已经有了]那我们得到的str的哈希值str_hash = mhash(str)接下来是mhash的实现代码:听说这种是比较不会发生冲突的了typedef unsigned long long ull; // 因为hash值一般都很大,所以我们采用ullull mhash(cha

2021-07-02 23:02:44 141

原创 字符串算法: AC自动机

AC自动机AC自动机 = KMP + Trie原理如果你还没看过kmp和trie,那我建议你先去看一下,因为这样会比较容易理解本文图片和灵感均来自https://blog.csdn.net/bestsort/article/details/82947639我在学AC自动机时,是直接先看题的,这里有一道入门模板题,我们先来看一下入门模板题这道题的意思是说:给你多个模式串S ,然后再给你一个文本串T,让你在T中找有多少个不同的模式串出现过比如:模式串有4个:ash,shex,sha,bcd文

2021-06-26 23:11:11 154

原创 promise详解

Promise之前我知道Promise 怎么用,却不知道为什么要用Promise有的人可以会想,执行异步操作我用async/await 就行了,为什么还要学promise?因为 带 async 关键字的函数,它使得你的函数的返回值必定是 promise 对象所以async的原理实现就是用的promise,不学promise可能不会对你的使用有太大影响,但是如果你知道原理,我觉得你可以会用的更加顺手。Why前端操作中,经常要有异步操作,比如在等待服务端返回response的时候,异步操作显得格外重

2021-06-19 14:48:15 274

原创 实验课--E-二叉树的中后序遍历构建及求叶子

二叉树的中后序遍历构建及求叶子写完这道题之后,你对树的理解应该会更加深刻题目描述按中序遍历和后序遍历给出一棵二叉树,求这棵二叉树中叶子节点权值的最小值。输入保证叶子节点的权值各不相同。输入第一行输入一个整数t,表示有t组测试数据。对于每组测试数据,首先输入一个整数N (1 <= N <= 10000),代表二叉树有N个节点,接下来的一行输入这棵二叉树中序遍历的结果,最后一行输入这棵二叉树后序遍历的结果。输出对于每组测试数据,输出一个整数,代表二叉树中叶子节点权值最小值。样

2021-05-05 16:29:51 1023 3

原创 uva12558

uva12558思路IDDFS+减枝当1/x * (剩余的层数) < a/b 减枝continue当1/x > a/b 减枝continue当出现第一组答案时,如果x>ans[deep-1] ,此时已经不是最优解了,减枝continue坑:能用bool的就不要用int代码#include <stdio.h>#include <string.h>typedef long long ll;const int maxk = 1010;ll a

2020-09-12 18:51:02 122

原创 uva690

uva690题意https://vjudge.net/problem/UVA-690流水线执行程序一共有五个工作单元,10个完全相同的程序需要被执行,每个程序至少需要n个时间段来执行同一个工作单元不能同时执行两个程序思路二进制位运算+dfs+最优解减枝具体看这张图代码// 用时130ms#include <iostream>#include <cstdio>#include <cstring>#define min(a,b) a<b?

2020-09-07 17:55:13 263

原创 uva211

uva211题意:https://vjudge.net/problem/UVA-211思路每一个方块都只有两种方式,横着和竖着如果到了可以换行的时候,上一行还没有摆满,则不通过,回溯注意格式,特别麻烦代码#include <iostream>#include <cstdio>#include <cstring>using namespace std;int mp[10][10];int ans[10][10];bool vis[10][1

2020-09-04 13:55:25 187

原创 uva225

uva225题意:https://vjudge.net/problem/UVA-225思路很显然的dfs+回溯,但是需要减枝,不然会TLE减枝1:判断当前该点是否已经无法回到原点减枝2:需要判断一步走完后的点是否已经访问过了(题意中没有说明白)代码#include <iostream>#include <cstdio>#include <cstring>#include <cmath>using namespace std;const

2020-08-31 14:40:21 213

原创 uva1602

uva1602题意链接如下:https://vjudge.net/problem/UVA-1602中文解释:输入n,w,h(1<=n<=10,1<=w,h<=n).求能放在w*h网格里的不同的n连块的个数(平移,旋转,翻转算一种)例如:第一排为n=5,w=2,h=4第2牌为n=8,w=3,h=3题解很直接的思路:打表+STL(set)重难点是 如何判断重复因为可以平移,旋转,翻转,所以我们需要给每一个连通块一个标准化(让其的相对起始点都在(0,0))。利用se

2020-08-27 10:39:39 221

原创 IDA* 与 A* 与uva1343

IDA* 和 A*故事背景练习紫书的过程中遇到了一个问题:uva1343经过日日夜夜的思考,决定去学习一下IDA*扩充自己的知识库本文参考了大佬的博客:A与IDA的奇妙之旅原理对IDA*我个人理解是:有方向的暴力搜索 【乍一想,有一点点人工智能的感觉哈哈哈】很神奇,搜索的路径大概会是这样的,具体可以参考A与IDA的奇妙之旅可以认为是,你在走一步之前多了个判断:判断走哪里会比较近,先从近的走 ,这样就可以减少搜索的次数有个函数是这样的F(x)=G(x)+H(x)F(x)=G(x)+H(x

2020-08-26 14:29:30 131

原创 快熟幂运算

快熟幂运算原理有2^99 = 2^50 * 2^49 = 2^25 * 2^25 * 2^25 * 2^24 = 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2......又 2^99 [十进制 ] = 2 ^ (1100011) [转换为2进制]所以所以 2^99 [十进制 ] = 2^(1000000) * 2^(100000) * 2^(11) [转换为2进...

2020-08-22 18:23:00 97

原创 蓝桥杯 算法训练:Yaroslav and Algorithm

题目描述:网络流裸题问题描述  (这道题的数据和SPJ已完工,尽情来虐吧!)  Yaroslav喜欢算法。我们将描述一个他最喜欢的算法。  1.这个算法接受一个字符串作为输入。我们设这个输入字符串为a。  2.这个算法由一些命令组成。i号命令的形式为"s[i]>>w[i]"或"s[i]<>w[i]",其中s[i]和w[i]是长度不超过7的字符串(可以为空...

2020-08-18 21:37:00 942

原创 蓝桥杯算法训练:网络流裸题

题目描述:网络流裸题问题描述  一个有向图,求1到N的最大流输入格式  第一行N M,表示点数与边数  接下来M行每行s t c表示一条从s到t的容量为c的边输出格式  一个数最大流量样例输入6 101 2 41 3 82 3 42 4 42 5 13 4 23 5 24 6 75 4 65 6 3样例输出思路看一下大佬讲的网络流吧,看完就懂...

2020-08-18 20:05:00 1593 1

原创 2019蓝桥杯B组第10题:灵能传输

题目描述:灵能传输思路挺难的一道贪心题,思路很难很难想。主要时用了 前缀和+贪心 的思想具体的我就不讨论了,大家看视频吧还是老师讲的比较清楚代码#include<iostream> #include<cstdio>#include<cstring>#include<algorithm>using namesp...

2020-08-13 22:24:00 355

原创 2019蓝桥杯B组第9题:后缀表达式

题目描述:后缀表达式思路挺离谱的一道题,巨坑巨坑。刚开始拿到这道题的时候,以为是道水题,减掉最小的,加最大的就可以了,后来发现我太天真了,真的太天真了。。。看这道题前,我们先来了解一下什么是后缀表达式:我们日常生活中常用的是中缀表达式:1+1+2=4,除了中缀表达式之外还有前缀表达式和后缀表达式前缀表达式就是把+-*/ 都放在前面 比如 ++1 1 2 = 4后缀表达...

2020-08-13 19:06:00 287 5

原创 2019蓝桥杯B组第8题:等差数列

题目描述:等差数列思路一开始拿到这道题的时候,我的第一个想法是这样的:先给数组排序,计算两数之间最大的差值d从d开始判断是否满足为数列的公差,不满足就d--再继续判断,直到满足,如果d一直不满足到1,则结束,假设最小的公差为1.如果公差为0,即该等差数列的每一项都相同,则答案为数组长度。但是,我还是太天真了,太傻了,看了网上大佬的题解后,深感羞愧不如。这道题其实考的...

2020-08-13 16:18:00 310

原创 2019蓝桥杯B组第5题:迷宫

题目描述:迷宫数据如下:010101010010110010010101100101101001000010001010100000100010000010101001000010000000100110011010010101111011010010001000001101001011100011000000010000010000000010101000110100001...

2020-08-11 21:02:00 111

原创 2019蓝桥杯B组第2题:年号字串

题目描述:年号字串思路printf("%c",m+'A'-1); 代码中的-1需要好好思考一下,这里我们可以用代入法,当m=1时输出为A。最终答案为反过来的打印结果代码#include<iostream>#include<cstdio>using namespace std;int main(){ int n = 2019; ...

2020-08-11 18:41:00 144

原创 2018蓝桥杯B组第8题:日志统计

题目描述:日志统计小明维护着一个程序员论坛。现在他收集了一份"点赞"日志,日志共有N行。其中每一行的格式是:ts id表示在ts时刻编号id的帖子收到一个"赞"。现在小明想统计有哪些帖子曾经是"热帖"。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是"热帖"。具体来说,如果存在某个时刻T满足该帖在[T, T+D)这段时间内(注意是左闭右开区间)...

2020-08-11 00:05:00 227

原创 2018蓝桥杯B组第6题:递增三元组

题目描述:递增三元组给定三个整数数组A = [A1, A2, ... AN],B = [B1, B2, ... BN],C = [C1, C2, ... CN],请你统计有多少个三元组(i, j, k) 满足:1 <= i, j, k <= NAi < Bj < Ck【输入格式】第一行包含一个整数N。第二行包含N个整数A1, A2, ......

2020-08-10 22:10:00 249

原创 2018蓝桥杯B组第4题:测试次数

题目描述:测试次数x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后才允许上市流通。x星球有很多高耸入云的高塔,刚好可以用来做耐摔测试。塔的每一层高度都是一样的,与地球上稍有不同的是,他们的第一层不是地面,而是相当于我们的2楼。如果手机从第7层扔下去没摔...

2020-08-04 21:12:00 180

原创 2018蓝桥杯B组第3题:乘积尾零

题目描述:乘积尾零如下的10行数据,每行有10个整数,请你求出它们的乘积的末尾有多少个零?5650 4542 3554 473 946 4114 3871 9073 90 43292758 7949 6113 5659 5245 7432 3051 4434 6704 35949937 1173 6866 3397 4759 7557 3070 2287 1453 989914...

2020-08-03 22:10:00 101

原创 欧几里得求最大公约数

欧几里得算法(gcd),辗转相除法辗转相除法是用于求出两数的最大公约数的算法。它的具体做法是:用较小数除较大数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。123456 和 7890 的最大公因数是 6,这可由下列步骤(其中,“a mod b”是指取 ...

2020-07-30 16:47:00 199

原创 2017蓝桥杯A组第8题:包子凑数

题目描述:包子凑数小明几乎每天早晨都会在一家包子铺吃早餐。他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子。每种蒸笼都有非常多笼,可以认为是无限笼。每当有顾客想买X个包子,卖包子的大叔就会迅速选出若干笼包子来,使得这若干笼中恰好一共有X个包子。比如一共有3种蒸笼,分别能放3、4和5个包子。当顾客想买11个包子时,大叔就会选2笼3个的再加1笼5个的(也可能选出1笼3个...

2020-07-30 15:52:00 330

原创 2017蓝桥杯A组第7题:正则问题

题目描述:正则问题考虑一种简单的正则表达式:只由 x ( ) | 组成的正则表达式。小明想求出这个正则表达式能接受的最长字符串的长度。例如((xx|xxx)x|(x|xx))xx能接受的最长字符串是: xxxxxx,长度是6。输入:一个由x()|组成的正则表达式。输入长度不超过100,保证合法。输出:这个正则表达式能接受的最长字符串的长度。例如,输入:((...

2020-07-29 22:27:00 163

原创 蓝桥杯2017-A组第4题:方块分割

题目描述:方格风格6x6的方格,沿着格子的边线剪开成两部分。要求这两部分的形状完全相同。注意:旋转对称的属于同一种分割法。如图所示思路去中间点为起点(3,3),分四个方向(上下左右),走一步就在mp数组中标记为1,在与起点中心对称的点也标记为1(例如:[2,2]与[4,4]),当走到x==0||x==6||y==0||y==6的时候结束,ans++。最终结果为ans/...

2020-07-29 19:27:00 234

原创 建通道

原题地址:https://ac.nowcoder.com/acm/contest/3003/I解题思路先去掉重复的,因为重复的相连之后得到的lowbit=0只要找到在某一个二进制(第k位)中,各个数字合起来有0和有1,把每一个0和1连接起来得到的结果是最小的,ans=2^k(n-1)*上图AC代码#include<cstdio>#include<cmath>...

2020-02-14 22:30:54 85

原创 施魔法

原题地址:https://ac.nowcoder.com/acm/contest/3003/H解题思路一道挺难想到的动态规划(原谅我智商不够,一开始做的时候想不到这个是动态规划),先对数组进行排序,极差值就会变成最后一个减第一个。从第2k个开始,有两种选择,要么接上上一个的尾巴,要么从之前的第k个现在的这个,重新组成一个段。最后输出dp[n]AC代码#include <iostr...

2020-02-14 22:23:03 296

原创 判正误

原题地址:https://ac.nowcoder.com/acm/contest/3003/G解题思路本题的主要难点就是降幂求模,通过欧拉降幂减少算法复杂度。AC代码#include <iostream>#include <cmath>using namespace std;int a, b, c, d, e, f, g;const int m = 1145...

2020-02-14 22:05:56 99

原创 拿物品

原题地址:https://ac.nowcoder.com/acm/contest/3003/F解题思路因为题意希望得分差最大,设牛牛为N,牛可乐为M,(N-M)增加,则N增加,M减少,即牛牛拿到的ai增加,牛可乐拿到的bi减小,反之牛牛拿到的bi增加,故计算出ai+bi的值,对ai+bi进行从小到大排序,奇数给牛牛,偶数给牛可乐AC代码#include <iostream>#...

2020-02-14 22:04:03 73

原创 做计数

原题地址:https://ac.nowcoder.com/acm/contest/3003/E解题思路AC代码#include<iostream>using namespace std;typedef long long ll;int n;ll ans;int main(){ cin>>n; for(int i = 1;i*i<=n...

2020-02-14 15:41:03 71

原创 数三角

原题地址:https://ac.nowcoder.com/acm/contest/3003/D解题思路单纯的计算几何题,钝角三角形的判定方法:最长边的平方大于其余两条边的平方和注意:需要处理三个点在一条线上的特殊情况AC代码#include <iostream>#include <cmath>using namespace std;typedef long ...

2020-02-14 15:26:23 135

原创 算概率

原题地址:https://ac.nowcoder.com/acm/contest/3003/C解题思路本题的重点在于对模数的计算,很多人不理解模数是怎么算的模数的计算假设 q=500000004 , mod = 1e9+7则 q/(mod+1)=1/2 故q代表的概率为二分之一另一个难点就是概率的统计设F[i][j]为在i道题中对j道题的概率,则F[i+1][j] = F[...

2020-02-14 15:23:17 66

原创 排数字

原题地址:https://ac.nowcoder.com/acm/contest/3003/B解题思路统计1和6的个数为n1和n6,如果n1的小于n6,ans=n1,如果n1=n6则ans=n1-1,如果n6<n1则ans=n6-1AC代码#include<iostream>using namespace std;const int maxn = 200000+10;...

2020-02-14 15:13:02 116

原创 做游戏

原题地址:https://ac.nowcoder.com/acm/contest/3003/A解题思路把(a,y)(b,z),(c,x)的最小值加到一起就是最终答案AC代码#include<iostream>#include<algorithm>typedef long long ll;using namespace std;int main(){ ll...

2020-02-14 15:09:27 266

原创 nico和niconiconi

原题地址:https://ac.nowcoder.com/acm/contest/3002/I解题思路一道中规中矩的动态规划,定义一个dp数组,储存每一个字母下的最大分数,最后输出dp[n]AC代码#include <iostream>#include <algorithm>using namespace std;const int maxn = 300000...

2020-02-14 15:05:07 154

空空如也

空空如也

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

TA关注的人

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