自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 在unbuntu服务器上使用nginx+uwsgi部署django项目

进入nginx.conf文件路径:/etc/nginx/nginx.confnginx配置文件启动nginx命令停止nginx服务重启nginx服务。

2024-04-07 17:47:28 227 1

原创 解决“-bash: suorce: command not found”

使用source报错:suorce: command not found。然后再使用source命令即可。

2024-04-02 11:16:55 109

原创 Django中使用celery实现异步任务、延时任务、周期定时任务

在setting.py文件中加入以下代码。

2024-03-18 11:28:29 536

原创 Djiango实现分页和过滤

分页可不在settings.py文件中设置REST_FRAMEWORK。

2024-03-05 11:06:09 360

原创 Django常用命令

在Django中的一个app代表一个功能模块。开发者可以将不同功能的模块放在不同的app中, 方便代码的复用。编写好了Model后,应该要进行数据迁移。迁移是Django对模型所做的更改传递到数据库中的方式。

2024-03-01 15:53:38 894

原创 VScode通过SSH连接远程服务器

打开SSH配置文件使用命令“vim /etc/ssh/sshd_config”.使用命令"su -"或者"sudo -i -u root"都可以。接下来就是选择操作系统,再输入服务器root用户的登陆密码即可.然后输入连接命令: ssh root@ip地址:端口号。首先点解VScode左侧的SSH插件按钮。

2024-01-26 10:05:44 660

原创 MySQL的启动与连接

进入MySQL的安装目录中的bin目录,按住shift键同时点击鼠标右键,打开powershell,输入命令.\mysql.exe -u 用户名 -p, 接下来再输入密码即可。方式二:以管理员身份打开powershell, 输入命令net start MYSQL80.方式一:进入计算机管理界面,点击【服务】,找到【MYSQL80】,右键开启即可。

2024-01-23 23:29:46 484

原创 Qt配置OpenCV

首先安装好Qt Createor,CMake,OpenCV,我本次使用的是Qt6.3.4和OpenCV4.6.0。

2024-01-23 17:56:44 657

原创 CF1701C.Schedule Management(二分答案)

CF做题记录

2022-07-11 14:03:19 272 1

原创 HDU6103.Kirinriki(尺取)

Kirinriki题意给出字符串s,寻找其两个长度相同且不重叠的子串,将其中一个子串反转后满足其每位的ascil差值之和不大于m,且长度最长思路此题用的尺取有点特殊,先从每个字符串的中点开始,把字符串分成长度相等的两部分,然后计算dis值小于m时的最大长度,然后再依次将中点左移和右移,枚举每一种情况代码#include<iostream>#include<algorithm>#include<queue>#include<set>#incl

2022-04-19 20:35:10 224 1

原创 线段树维护区间众数

线段树维护区间众数,需要维护三个值,分别是:以左端点为起点的最大连续长度ls,以右端点为终点的最大连续长度rs,区间的最大连续长度ms;需要注意以下细节:1.那么父区间的ls可以由左区间的ls向上合并得到,父区间的rs可以由右区间的rs向上合并得到。当然需要考虑左右区间为满区间的情况,如果相邻两个值相等且左右区间各自为满的情况需要考虑父区间的ls 和 rs跨到另一个区间的问题。父区间的ms可以由左区间的ms,右区间的ms,左区间的rs + 右区间的ls三者最大得到。2.查询的时候先查出左区间最大,再查出

2022-04-19 16:16:17 680 1

原创 带权并查集

代码#include<iostream>#include<algorithm>#include<cstdio>#define ll long longusing namespace std;const int N=1e5+10;const double esp=1e-5;const ll mod=1e9+7;int n,m,par[N],val[N];void init(){ for(int i=1;i<=n;i++){

2022-04-12 21:13:24 278 1

原创 SQL Server基本操作(二)

文章目录一.涉及空值的查询二.ORDER BY 子句三.聚集函数四GROUP BY子句一.涉及空值的查询如:查询grade为空和不为空的学生信息:SELECT * FROM SC1 WHERE grade IS NULL /* 查询成绩为空的学生信息 */SELECT * FROM SC1 WHERE grade IS NOT NULL AND cno='002' /* 查询成绩不为空且选修了编号为002的课程的学生信息 */二.ORDER BY 子句ORDER BY子句可以按一个或多个属性

2022-04-06 14:08:50 327

原创 HDU4006.The kth great number(优先队列)

题目链接题意可以执行两种操作:(1).III:向数字序列中添加一个数字;(2)QQQ:询问数字序列中的k大的数是多少;思路用优先队列保存序列中的数字,保留最小的前k个数,每次询问时输出堆顶元素即可.(qwq:很久没用优先队列刚开始一直没想到,竟然用sort显示`(>﹏<)′)代码#include<iostream>#include<algorithm>#include<queue>#include<map>#include&

2022-04-04 23:55:34 319

原创 DP做题记录

一.CF1389B Array Walk题意思路代码#include<iostream>#include<algorithm>#include<stack>#include<cstdio>#include<vector>#include<cstring>#include<string>#define ll long longusing namespace std;typedef pair<i

2022-04-04 20:37:34 114

原创 SQL Server基本操作(一)

文章目录一.创建,删除数据库二.在数据库中建表和删除表在这里插入代码片三.插入,查询,修改,删除数据一.创建,删除数据库如:创建一个名为db1的数据库CREATE DATABASE db1删除该数据库:DROP DATABASE db1二.在数据库中建表和删除表在这里插入代码片新建一个名为SC的表:use qdatabase /* 使用qdatabase数据库 */GOCREATE TABLE SC( sno CHAR(9) PRIMARY KEY, /* 主键,唯一值且不能为N

2022-03-24 08:59:49 355

原创 NC16493推销员(贪心+优先队列)

题目链接思路:每一次走都有两种决策:1.往回走,此时总疲劳就不需要再加上路程的疲劳了。(因为在走到当前位置的过程中 已经经过了这个点了,可以理解为顺路推销完了)2.往前继续走, 总疲劳要加上路程所耗疲劳和推销的疲劳;每一次取哪个决策 就取决于哪个决策消耗的疲劳多,即取最大值,很容易想到堆优化(优先队列);于是我们就把所有决策消耗的疲劳丢入堆中,然后进行比较;代码:#include<bits/stdc++.h>#define ll long longusing namespace

2022-03-22 17:47:09 178

原创 CF915C Permute Digits(搜索+剪枝)

题目链接题意:给出两个正整数a,b。在十进制下重排a,构造一个不超过b的最大数,不能有前导零。允许不去重排a。输入格式:第一行一个数a(1<=a<=1018),第二行一个数b(1<=b<=1018)数没有前导零,数据保证有解。输出格式:输出一个数,表示a重排后不超过b的最大数,不应该有前导零。输出的数的长度应该与a相等,它应该是a的一个排列。思路:以字符串的形式输入,先将a字符串从小到大排序,然后dfs搜索来找到不超过b的最大数,需要经过剪枝优化来降低复杂度代码

2022-03-16 13:41:44 117

原创 AcWing4313. 满二叉树等长路径(递归+贪心)

题目链接思路若要使所有叶子节点到根节点距离相等,那么首先应使左子树的所有叶子节点到左子树根节点距离相等(设为l),使右子树所有叶子节点到右子树根节点距离相等(设为r),然后再将左右子树的所有叶子节点到根节点的距离变为max(l,r)max(l,r)max(l,r),所以应增加的距离应为∣l−r∣|l-r|∣l−r∣,可利用递归对每一层实现这个过程代码#include<iostream>#include<algorithm>#include<stack>#i

2022-03-13 18:46:59 87

原创 (stable_sort稳定排序)阿罗拉联盟赛

题目链接思路:直接模拟即可,需要注意,排序要用stable_sort()#include<iostream>#include<algorithm>#include<queue>#include<set>#include<unordered_map>#include<stack>#include<cstdio>#include<vector>#include<cstring>#in

2022-03-08 16:50:48 94

原创 AcWing4310. 树的DFS(dfs序列)

题目链接思路用dfs跑一遍整棵树,分别用一个数组记录好每个结点的dfs序(dfn数组),整棵树的dfs序列(p数组),以每个不同节点为根节点的子树节点数量(sz数组).若询问时输入u,k,当k>sz[u]时无解,否则答案为p[dfn[u]+k-1].代码#include<iostream>#include<algorithm>#include<queue>#include<set>#include<unordered_map&gt

2022-03-06 17:14:06 132

原创 博弈论(巴什博弈,威佐夫博弈,尼姆博弈)

文章目录一.巴什博弈二.威佐夫博弈三.尼姆博弈一.巴什博弈一堆n个物品,两个人从中轮流取出1~m个,最后取关者胜.同余定理:n=K*(m+1)+r;先取者拿走r个,那么后者无论拿走(1~m)个先者只要拿的数目和为m+1那么先者必赢.反之若n=K*(m+1)+r,那么先者必输.bool check(){ if(n%(m+1)) return true; else return false;}二.威佐夫博弈有两堆若干个物品,两个人轮流从任意一堆中取出至少一个或者同时从两堆中取出同样多的物品,

2022-03-03 15:32:26 577

原创 数论常用结论

结论:如果 a,b 均是正整数且互质,那么由 ax+by,x≥0,y≥0 不能凑出的最大整数是 ab−a−b。如果a,b不互质,那么一定不存在ax+by,x≥0,y≥0 不能凑出的最大整数数例题:AcWing 525. 小凯的疑惑代码:#include<iostream>#include<cstdio>#include<cstring>using namespace std;typedef long long ll;typedef pair<

2022-03-02 12:19:47 264

原创 open cv常用操作(一)

文章目录一.图片导入二.视频导入三.打开摄像头一.图片导入img=cv2.imread('BDD.jpg')#括号里设置图片文件的路径cv2.imshow('Output',img)cv2.waitKey(0)#设置窗口停留时间,0表示无限时间二.视频导入import cv2cap=cv2.VideoCapture("video1.mp4")points=(500,300)while True: success,img=cap.read()#读取视频的每一帧图像 res=

2022-02-23 21:16:33 539

原创 IDA*算法

IDA*算法是迭代加深的A*算法,设计一个估价函数f(state)<=真实步数

2022-02-17 23:36:58 1279

原创 机器学习大纲

2022-02-15 17:57:41 479

原创 tarjan算法

文章目录tarjan算法介绍一、tarjan算法求强连通分量二、tarjan缩点三、tarjan求割点、桥tarjan算法介绍一、tarjan算法求强连通分量二、tarjan缩点三、tarjan求割点、桥

2022-02-11 00:16:50 451

原创 倍增法求LCA

文章目录一、倍增思想二、倍增求LCA一、倍增思想倍增, 从字面的上意思看就是成倍的增长 ,这是指我们在进行递推时,如果状态空间很大,通常的线性递推无法满足时间和空间复杂度的要求 ,那么我们就可以通过成倍的增长,只递推状态空间中在 2 的整数次幂位置上的值作为代表 。当需要其他位置上的值时,我们只需要通过" 任意整数可以表示成若干个2 的 次幂项的和 " 这一性质(13 = 23 + 22 +20 ), 使用之前求出的代表值拼成所需的值。关于倍增的理解可通过此博客:【白话系列】倍增算法二、倍增求LC

2022-01-30 20:02:37 286

原创 树状数组模板

文章目录一、树状数组介绍一、树状数组介绍

2022-01-23 13:07:28 1540

原创 字典树trie

文章目录trie树的作用原理基本操作和代码trie树的作用(1)串的快速检索给出N个单词组成的熟词表,以及一篇全用小写英文书写的文章,请你按最早出现的顺序写出所有不在熟词表中的生词。在这道题中,我们可以用数组枚举,用哈希,用字典树,先把熟词建一棵树,然后读入文章进行比较,这种方法效率是比较高的。(2)“串”排序给定N个互不相同的仅由一个单词构成的英文名,让你将他们按字典序从小到大输出用字典树进行排序,采用数组的方式创建字典树,这棵树的每个结点的所有儿子很显然地按照其字母大小排序。对这棵树进行先

2022-01-17 00:55:46 307

原创 线段树及其懒标记

懒标记基本原则:1、如果当前区间被完全覆盖在目标区间里,讲这个区间的sum+k*(tree[i].r-tree[i].l+1)2、如果没有完全覆盖,则先下传懒标记3、如果这个区间的左儿子和目标区间有交集,那么搜索左儿子4、如果这个区间的右儿子和目标区间有交集,那么搜索右儿子代码示例://洛谷P3372#include<iostream>#include<queue>#include<string>using namespace std;typede

2021-12-24 16:42:10 708

原创 哈夫曼算法

哈夫曼算法哈夫曼算法的一般步骤如下:1.初始化:由给定的 个权值构造nnn棵只有一个根节点的二叉树,得到一个二叉树集合FFF 。2.选取与合并:从二叉树集合FFF中选取根节点权值 最小的两棵 二叉树分别作为左右子树构造一棵新的二叉树,这棵新二叉树的根节点的权值为其左、右子树根结点的权值和。3.删除与加入:从FFF中删除作为左、右子树的两棵二叉树,并将新建立的二叉树加入到FFF中。4.重复 2、3 步,当集合中只剩下一棵二叉树时,这棵二叉树就是霍夫曼树。代码#include<stdio.

2021-12-22 20:26:27 2524

原创 二叉树的基本操作

//二叉树的创建和基本操作#include<stdio.h>#include<stdlib.h>#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0#define OVERFLOW -1typedef int Status;typedef char TElemType;typedef struct BitNode{ TElemType data;

2021-12-20 09:11:16 56

原创 A*算法解决八数码问题

A*算法核心A*算法是启发式算法的一种,其核心部分在于估值函数的设计:f(n)=g(n)+h(n),其中f(n)是每个试探点的估值,h(n)为当前节点到目标节点地估值.算法主要流程如下:首先将起始点s放入open表,将close表置空.(1).如果OPEN表不为空,从表头取一个结点n,如果为空算法失败。(2).判断n结点是否是目标点,如果是终止算法,否则继续搜索(3).将n的所有后继结点展开,就是从n可以直接关联的结点(子结点),如果不在CLOSE表中,就将它们放入OPEN表,并把s放入CLOSE

2021-12-16 15:10:52 9107 3

原创 实数二分(模板及例题)

POJ1905-Expanding Rods #include<iostream>#include<algorithm>#include<queue>#include<set>//#include<unordered_map>#include<stack>#include<cstdio>#include<vector>#include<cstring>#include<str

2021-12-13 10:12:25 119

原创 bellmanford算法模板

bellmanford算法:常用于判负环,进行了n轮松弛则说明有负环,可以利用这个性质判断差分约束系统是否有解#include<bits/stdc++.h>using namespace std;#define N 100010struct edge { int v, w;};vector<edge> e[N];int dis[N],n,m;bool bellmanford(int s) { memset(dis, 0x3f, sizeof(dis));

2021-11-28 21:27:19 691

原创 用顺序线性表实现归并排序

思路:分治思想,将线性表不断对半拆分,拆到只剩一个元素时就进行从小到大归并,递归实现代码:#include<stdio.h>#include<stdlib.h>#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define OVERFLOW -1#define LIST_INIT_SIZE 200 //线性表存储空间的初始分配量 #define LIST

2021-11-18 12:53:25 742

原创 2017年湖南省赛I题(最短路)

#include<iostream>#include<algorithm>#include<set>#include<cstdio>#include<vector>#include<cstring>#include<string>#include<queue>#include<map>#include<cmath>#include<bitset>#defi

2021-10-30 10:10:17 171

原创 牛客补题(BFS+DP)

Spicy Restaurant

2021-10-06 11:33:53 230

原创 二分图的染色与判定

Ps: 染色法可以用于判断一个图是否是二分图,也可以用于把一个二分图分成两部分原理:首先任意取出一个顶点进行染色,和该节点相邻的点有三种情况:1.如果未染色,那么继续染色此节点(染为另一种颜色)2.如果已染色但和当前节点颜色不同,则跳过该点3.如果已染色并且和当前节点颜色相同,返回失败(该图不是二分图)如果已知是二分图只染色不判断://col数组为染色后节点的颜色,初始为0void color(int x,int c){ col[x]=c; for(auto v:G[x]){

2021-08-27 11:30:41 131

空空如也

空空如也

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

TA关注的人

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