自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Vicente的博客

弱水三千,我取一瓢

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

转载 一篇教会你ACM模拟退火SA

模拟退火SA全解简介​ 模拟退火算法(Simulate Anneal,SA)是一种通用概率演算法,用来在一个大的搜寻空间内找寻命题的最优解。模拟退火是由 S.Kirkpatrick, C.D.Gelatt 和 M.P.Vecchi 在1983年所发明的。V.Černý 在1985年也独立发明此演算法。模拟退火算法是解决TSP问题的有效方法之一。​ 模拟退火的出发点是基于物理中固体物质的退...

2019-08-05 20:30:06 2218 2

原创 数据挖掘课堂笔记

放给憨批zcy的笔记9/23数据挖掘中常见的挑战:噪声不确定性:重复测量数据不完备性:部分数据遗失数据挖掘趋势:大规模数据高维度异构的信息open2. 1数据对象与属性类型对象 实体别名:data entity samples examples …通过属性来描述对象 attributes离散型的属性和连续型的属性标称属性:类似于hash值,类如enum中1-black,2-red,3-purple二元属性:Binary只有两个状态...

2020-09-28 20:25:47 1048

原创 软件工程课程笔记

第一章:软件与软件工程软件工程三要素是方法、工具、过程。软件开发模型软件开发模型又称为软件过程模型。软件过程模型是对软件开发实际过程的抽象和简化。目前典型的有瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等。瀑布模型主要思想:软件开发过程与软件生命周期一致;相领二阶段存在因果关系;需要对阶段性产品进行评审优点:软件开发过程具有系统性,可控性,客服了软件开发的随意性;每个阶段都有产出,非常经典的模型缺点:项目开始阶段用户很难精确提出产品需求,由于技术进步

2020-09-28 16:21:25 770

原创 神经网络与深度学习课堂笔记

这里是引用9/22图灵测试机器学习三要素模型:线性方法:f(x) = wTx+bx+bx+b广义线性方法:f(x) = wTϕ(x)+b\phi(x)+bϕ(x)+b学习准则损失函数:最小化损失函数平方损失函数经验风险最小化:把机器学习问题转化为最优化问题优化算法:梯度下降搜索步长 α\alphaα:学习率机器学习算法的类型数据的特征表示图像特征文本特征表示学习...

2020-09-22 15:31:45 368

原创 含一层hidden_layer的Logistic回归神经网络

import numpy as npimport matplotlib.pyplot as pltfrom testCases import *import sklearnimport sklearn.datasetsimport sklearn.linear_modelfrom planar_utils import sigmoid,plot_decision_boundary,load_planar_dataset,load_extra_datasets%matplotlib inlin

2020-09-21 21:13:17 479

原创 matplotlib入门实例

import matplotlib.pyplot as plt%matplotlib inlineimport numpy as npdata_one = np.arange(100,201)plt.plot(data_one)plt.show()figure_obj = plt.figure()<Figure size 432x288 with 0 Axes>data_two = np.arange(200,301)plt.figure(facecolor = 'g

2020-09-21 16:54:39 313

原创 seaborn使用实例

import seaborn as sns%matplotlib inlineimport numpy as np#显示调用set()获取默认绘图sns.set()np.random.seed(0)arr = np.random.randn(100)ax = sns.displot(arr,bins=10)arr_random = np.random.randint(0,100,500)sns.displot(arr_random,rug=True)import pandas a

2020-09-21 16:51:10 387

原创 用于【识别猫】二元分类Logistic回归神经网络

import numpy as npimport matplotlib.pyplot as pltimport h5pyfrom lr_utils import load_datasettrain_set_x_orig,train_set_y,test_set_x_orig,test_set_y,classes = load_dataset()index = 25plt.imshow(train_set_x_orig[index])<matplotlib.image.AxesIma

2020-09-15 19:09:08 213

原创 计算机系统PA2指令小记

一条指令的执行周期包括取址、译码、执行三个阶段。push\pop是对寄存器esp,rsp操作,加减。返回值放在rax eaxebp放栈底esp放栈顶函数的结束阶段两条指令:leave,ret即 movl %ebp,%esppopl %ebp准备阶段放IA32中,参数全都分配4个字节,方便寻找入口参数。memorysize比filesize大的原因:.bss中的未初始化变量是不占用文件空间的,但是放在内存中占空间。RE 可写可执行 代码段RW 可写可读 数据段大小端:“

2020-09-15 09:17:58 2244

原创 NumPy入门

import numpy as npdata = np.arange(12)dataarray([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])data = data.reshape(3,4)dataarray([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])type(data)numpy.ndarraydata.ndim# 维度的个

2020-09-14 20:09:32 252

原创 HDU 2196 Computer 换根法 树形dp

题意:给出一棵树,求离每个节点最远的点的距离解法:把无根树转化成有根树分析,随便找一个根,对于每个节点,维护所有以当前节点为根的子树中距当前节点最远的距离和次远距离,两次dfs。第一次扫描时,任选一个点为根,在“有根树”上执行一次树形dp,在回溯时,自底向上的状态转移。第二次扫描时,从第一次选的根出发,对整根树执行一个dfs,在每次递归前进行自顶向下的转移,计算出换根后的解。#include <iostream>#include <cstring>#include &lt

2020-08-24 10:35:39 120

原创 网络流24题-5.圆桌问题

链接题意:有来自 mmm 个不同单位的代表参加一次国际会议。第 iii 个单位派出了 rir_iri​ 个代表。会议的餐厅共有 nnn 张餐桌,第 iii 张餐桌可容纳 cic_ici​个代表就餐。为了使代表们充分交流,希望从同一个单位来的代表不在同一个餐桌就餐。请给出一个满足要求的代表就餐方案。解法:感觉是做到现在最水的一道网络流了,拆点直接强行建边就行啦。洛谷的SPJ形同虚设。。#include <bits/stdc++.h>#define INF 0x3f3f3f3fusi

2020-08-19 19:26:07 193

原创 灭绝树支配树

问题模型:在一张捕食图上(从捕食者向被捕食者有连边),若某生物的所有食物都灭绝了,则该生物灭绝。灭绝树便是此图的一种生成树,使得满足灭绝树上某点灭绝,该点子树内所有点都灭绝支配树,就是满足树上一个点xx的所有祖先都是它的支配点的树。一、树形图树形图就是自己的支配树二、DAG对于DAG,先拓扑排序,再建树,建树的时候顺便把倍增数组处理一下,最后dfs统计一下。建树过程:假设i的食物有x[0]…x[k](x[0]…x[k]在拓扑排序中比i靠前),很显然,只有x[0]~x[k]在树上的公共祖

2020-08-19 14:44:13 241

原创 网络流24题-4.魔术球问题

链接题目描述假设有 nn 根柱子,现要按下述规则在这 nn 根柱子中依次放入编号为 11,22,33,…的球“每次只能在某根柱子的最上面放球。同一根柱子中,任何 22 个相邻球的编号之和为完全平方数。试设计一个算法,计算出在 nn 根柱子上最多能放多少个球。例如,在 44 根柱子上最多可放 1111 个球。对于给定的 nn,计算在 nn 根柱子上最多能放多少个球。输入格式只有一行一个整数 nn,代表柱子数。...

2020-08-14 19:53:52 161

原创 网络流24题-3.最小路径覆盖问题

链接建图方式:对于每个点拆点拆到两侧,拆成二分图,s对所有左点连1的边,所有右点连到t为1的边,所有的边(u,v)(u,v)(u,v)连边成为(u,v+n,1)(u,v+n,1)(u,v+n,1)比较有意思的是打印方案的方法,利用反向边w[i]==1w[i]==1w[i]==1去从右往左递归,剩下一些单点的扫一遍就有了。#include <bits/stdc++.h>#define INF 0x3f3f3f3fusing namespace std;const int maxn

2020-08-13 20:57:41 105

原创 网络流24题-2.太空飞行计划问题(最大权闭合子图)

链接题意:给定一张图,有左侧的点和右侧的点,左侧的点点权为正(对应试验),右侧的点点权为负(对应器材),如果选择了左侧的某个点就必须要选右边的一部分点。要求最大化点权和。如果一个点被选择了则后继必须被选择,那么称该图是 闭合的,因此该问题叫做最大权闭合子图问题。最大权闭合子图的权值和=正点权和−最小割 最大权闭合子图的权值和 =正点权和−最小割最大权闭合子图的权值和=正点权和−最小割#include <bits/stdc++.h>#define INF 0x3f3f3f3fusin

2020-08-13 19:52:07 151

原创 fhq treap

https://www.cnblogs.com/zwfymqz/p/7151959.htmlhttps://www.luogu.com.cn/problem/solution/P3369?page=2#include <bits/stdc++.h>using namespace std;const int maxn = 5e5+100;int ch[maxn][2],pri[maxn],siz[maxn],sz,val[maxn];int root = 0,x,y,z;int in

2020-08-10 21:05:39 159

原创 网络流杂题

UVA1660 电视网络 Cable TV Network链接题目大意: 给定一个n(n <= 50)个点的无向图,求它的点联通度。即最少删除多少个点,使得图不连通。无向图 最小割点 先拆点 枚举s,t跑dinic s,t拆点连INF 其他点拆点连1#include <bits/stdc++.h>#define INF 0x3f3f3f3fusing namespace std;const int maxn = 200;const int maxm = 2e4+100;i

2020-08-10 10:23:27 94

原创 带模数的基尔霍夫矩阵树求生成树个数

HDU多校第六场1010ExpectationProblem DescriptionYou are given an undirected graph consisting of n vertices with m weighted edges. We define the weight of a spanning tree as the bitwise AND of all edges’ weight in spanning tree.Now select a spanning tree rand

2020-08-08 09:26:17 192

原创 网络流24题-1.飞行员配对方案问题

简单建图,建超源超汇链接#include <bits/stdc++.h>#define INF 0x3f3f3f3fusing namespace std;const int maxn = 550;const int maxm = maxn * 50;int n, m;int to[maxm], nxt[maxm], w[maxm];int fst[maxn], cnt, cur[maxn];int s, t, d[maxn];void init() { mem

2020-08-07 19:51:15 147

原创 ACM奇技淫巧

卡常技巧链接位运算技巧链接快速乘(解决了可能会爆longlong的问题)inline ll ksc(ll x,ll y,ll mod){ return (x*y-(ll)((long double)x/mod*y)*mod+mod)%mod; }快速加、减inline int inc(int x,int v,int mod){x+=v;return x>=mod?x-mod:x;}//代替取模+inline int dec(int x,int v,int mod)

2020-08-05 14:16:09 307

原创 并查集题目整理

CF859E Desk Disorder链接判环和子环,算方案数#include <bits/stdc++.h>using namespace std;const int maxn = 2e5+100;int faz[maxn],size[maxn],loop[maxn],circle[maxn];int find(int x){ if (x == faz[x]) return x; else return faz[x] = find(faz[x]);}int

2020-08-03 22:21:38 230

原创 树剖模板总结

[ZJOI2008]树的统计I. CHANGE u t : 把结点 uu 的权值改为 tt。II. QMAX u v: 询问从点 uu 到点 vv 的路径上的节点的最大权值。III. QSUM u v: 询问从点 uu 到点 vv 的路径上的节点的权值和。#include <bits/stdc++.h>#define INF 0x3f3f3f3fusing namespace std;const int maxn = 1e5 + 100;int n;int cnt, fst

2020-07-31 21:02:02 102

原创 最小生成树的第三种求法-Borůvka (Sollin) 算法

Borůvka (Sollin) 算法https://www.luogu.com.cn/blog/Tweetuzki/solution-p3366每次寻找连通块间的最短边,加入生成树中。每次update是O(M)的,每次update会使得连通块的数量减半,所以这个生成树算法的时间复杂度是O(MlogN)的,这个logN很重要因为另外两个MST做不到。Kruskal O(MlogM)Prim板子:#include <iostream>#include <cstdio>#

2020-07-29 19:08:47 1885

原创 HYSBZ-2660最多的方案-齐肯多夫定理+dp

最多的方案 HYSBZ - 2660现在给一个正整数 n,它可以写成一些斐波那契数的和的形式。如果我们要求不同的方案中不能有相同的斐波那契数,那么对一个 n 最多可以写出多少种方案呢?考虑将数n分解成齐肯多夫形式,然后拆分成段逐位向下分解,显然每一段的贡献是坐标差/2向下取整。因为可能会出现段之间的0影响实际分解情况,所以用dp记录一下每个位置有没有分解。递推式:#include <bits/stdc++.h>#define ll long longusing namespace

2020-07-29 15:45:09 567

原创 计蒜客A1294(A)-广义欧拉降幂

给n和模数mod,求exponial(n)%mod欧拉降幂:借鉴了直接将modulo改写的写法:inline ll modulo(ll x, ll mod){return x < mod ? x : x % mod + mod;}#include <bits/stdc++.h>#define ll long longusing namespace std;inline ll phi(int x){ ll ans = x; for (ll i = 2;i*i

2020-07-29 13:20:55 161

原创 hdu多校day2-1006The Oculus-二重哈希

#include <bits/stdc++.h>#define ll long longusing namespace std;const int maxn =2e6+1000;const ll mod1 = 1e9+7;const ll mod2 = 1e9+9;const int base = 131;int len_a,len_b,len_c;ll ans1_a,ans2_a,ans1_b,ans2_b,ans1_c,ans2_c,ans1_pre,ans2_pre;ll

2020-07-24 00:51:43 150

转载 马拉车求子回文串个数 O(n)

string s;int tot,len[maxn],n;LL num(){ int mx=0,p=0,cnt=0; memset(len,0,sizeof len); for(int i=1;i<=n;i++){ if(mx>i) len[i]=min(mx-i,len[2*p-i]); else len[i]=1; while(s[i-len[i]]==s[i+len

2020-07-21 13:32:36 161

转载 传统身份验证&Token

传统身份验证的方法:HTTP 是一种没有状态的协议,也就是它并不知道是谁是访问应用。这里我们把用户看成是客户端,客户端使用用户名还有密码通过了身份验证,不过下回这个客户端再发送请求时候,还得再验证一下。解决的方法就是,当用户请求登录的时候,如果没有问题,我们在服务端生成一条记录,这个记录里可以说明一下登录的用户是谁,然后把这条记录的 ID 号发送给客户端,客户端收到以后把这个 ID 号存储在 Cookie 里,下次这个用户再向服务端发送请求的时候,可以带着这个 Cookie ,这样服务端会验证一个这个 C

2020-07-17 17:05:15 377

转载 Token&Session简介

Token & Session一、我们先解释一下他的含义:Token 的引入:Token 是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token 便应运而生。Token 的定义:Token 是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个 Token 便将此Token返回给客户端,以后客户端只需带上这个 Token 前来请求数据即可,无需再次带上用户名和密码。

2020-07-17 16:51:39 1385

转载 java速成

输入:格式为:Scanner cin = new Scanner (new BufferedInputStream(System.in));例程:import java.io.*;import java.math.*;import java.util.*;import java.text.*;public classMain{ public static void ma...

2019-10-08 21:19:25 941

原创 扫描线

扫描线例题 POJ1151 Atlantis线段树,扫描线,离散化,矩形面积并#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;#define lz 2*u,l,mid#define rz 2*...

2019-08-26 09:36:57 115

原创 CDQ分治

CDQ分治多维偏序问题二维偏序问题HDU 1541 Stars给定 nnn 个元素,第 iii 个元素有 ai、bia_i 、 b_iai​、bi​ 两个属性,设 f(i)f(i)f(i) 表示满足 aj≤aia_j\leq a_iaj​≤ai​ 且 bj≤bib_j\leq b_ibj​≤bi​ 的 j 的数量。对于 d∈[0,n]d\in [0,n]d∈[0,n] ,求满足 f(...

2019-08-23 13:51:48 184

原创 Football Team(2009 Round 3C)

Football Team(2009 Round 3C)题意在一个平面上给出N个球员的坐标,每个人的 x 坐标不同,相邻的球员要穿上不同颜色的意思。(x1,y1)(x_1,y_1)(x1​,y1​) 和 (x2,y2)(x_2,y_2)(x2​,y2​) 相邻的条件为:y1−1≤y2≤y1+1y_1-1≤y_2≤y_1+1y1​−1≤y2​≤y1​+1没有球员在满足 x1&lt;...

2019-08-06 20:29:12 143

原创 Mine Layer(2008 World Final C)

Mine Layer(2008 World Final C)题意类似于扫雷游戏,在一些格子中散布着一些地雷,具体的埋藏位置并不清楚,但知道每个格子及其周围八个格子的地雷总数。请问此时正中间那一行最多可能有多少地雷(题目假定所有的输入都是奇数行的)?输入:第一行,有一个正整数N,代表有N个测试数据。每个测试数据的第一行包含两个正整数R(行数,R是奇数)和C(列数)。以下是R行每行C列的正...

2019-08-06 15:15:57 223

转载 srand((unsigned int)time(NULL))引发的思考

这几天刷题碰到这句函数:srand((unsigned int)time(NULL))一看之下,有点印象,但就是说不清楚,挺气人的,就想着弄明白这个东西跟大家分享分享1,srand跟rand的关系:2,time函数的简单用法;3,参数执行的优先级关于srand这个函数在C/C++中经常跟rand函数一起使用,srand是随机数发生器的初始化函数在C中:这两个函数都位与<std...

2019-08-03 10:00:57 1677

转载 基于python实现图片批量修改分辨率

#提取目录下所有图片,更改尺寸后保存到另一目录from PIL import Imageimport os.pathimport globdef convertjpg(jpgfile,outdir,width=128,height=128): img=Image.open(jpgfile) try: new_img=img.resize((width,hei...

2019-08-01 00:56:35 3419 3

原创 可持久化01Trie + 异或粽子 (精心)

···// luogu-judger-enable-o2#include <bits/stdc++.h>using namespace std;const int maxn = 2*1e7;int root[maxn], node_cnt, node, size[maxn];int trie[maxn][3];int n, m;inline int read() {...

2019-07-30 20:46:18 307 1

原创 迭代加深搜索+双向搜索

迭代加深搜索:从小到大限制搜索的深度,如果当前限制下搜不到答案,再把深度限制增加,重新进行一次搜素(没错,会存在重复搜索)。例题:POJ 2248 Addition Chains满足如下条件的序列X(序列中元素被标号为1、2、3…m)被称为“加成序列”:1、X[1]=12、X[m]=n3、X[1]<X[2]<…<X[m-1]<X[m]4、对于每个 k(2≤k...

2019-07-29 10:36:03 226

原创 马拉车算法(Manacher)

看了好几篇博客,最后有思路的是一篇用pyhton写的,传送门马拉车算法分为几个步骤:1.字符中插入特殊字符,通常插入"#",插入后字符串必会变成一个奇数串,因为插入的字符个数是len+1。首尾加上不同的字符例如&¥,简化边界情况越界判断。2.计算半径数组p3.数组p中最大值,即为最长回文子子串的半径根据半径数组 p 的定义,如果最大值对应位置为 i,则最大回文子串为 ss[i -...

2019-07-28 15:50:56 217

空空如也

空空如也

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

TA关注的人

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