自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mac command+鼠标左键无效

解决mac command+鼠标左键无效

2022-10-13 10:42:09 1076 1

原创 CSS子块元素在父块元素水平垂直居中的几种方式

子元素在父元素中垂直水平居中的几种方式

2022-03-06 10:43:14 940

原创 css解决高度塌陷以及外边距重叠的问题

什么是高度塌陷?在浮动布局中,父元素的高度默认是被子元素撑开的,我们给子元素设置了浮动,其会脱离文档流,将无法撑起父元素的高度,导致父元素的高度丢失, 其下的元素会自动上移,导致页面布局混乱如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge">

2022-02-22 16:55:33 369

原创 CSS设置子元素在父元素中水平居中

怎么做?<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title&g

2022-02-22 11:10:07 554

原创 浏览器的工作原理

内容来自浏览器的工作原理听完大佬的讲解,自己整理了一下视频的内容简化的浏览器结构图用户界面:用于展示除标签页窗口之外的其他用户界面内容渲染引擎:负责渲染用户请求的页面内容,浏览器的核心,往往把渲染引擎称为浏览器的内核浏览器引擎:用于在用户界面和渲染引擎之间传递数据渲染器下面还有很多小功能模块比如负责网络请求的网络模块用于解析和执行js的js解释器数据持久层:帮助浏览器存储各种数据 例如cookie浏览器的多进程结构现代浏览器都是多进程结构:浏览器进程:负责控制除标签页窗口之外的用

2021-12-15 22:39:02 290

原创 antd-tree作为form.Item控件自定义托管的数据

TreeNode props:{key:title:value:department_id:}TreeSelect作为Form.Item的控件<Form.Item label="****" name="organization_manage" valuePropName="department_id"> <TreeSelect allowClear showSearch treeData={loop(treeData)} treeNodeFilterPr

2021-12-06 13:09:24 1056

原创 如何去除U盘写保护

今天帮一个老爷子格式化U盘,提示写保护,各种搜索,在一个网站是找到了好使的解决方法,然后还发现这个网站很有意思!!网址链接

2021-11-29 23:21:40 885

原创 React中给Dom节点添加多个className

方法1<div className={value.class + " " + value.class2}>{value.value}</div>方法2(中间必须用空格隔开)<div className={`${value.class} ${value.class2}`}>{value.value}</div>

2021-11-26 17:02:50 826

原创 mac git简化命令配置

1.添加ruby插件(之前安装过on my zsh,git)cd ~vim ~/.zshrc //打开文件添加之后别忘了sourcesource ~/.zshrc 2.添加简写命令vim ~/.gitconfig //在打开的文件中添加简写命令,看个人喜好添加 3.执行完上面的命令后就可以使用了...

2021-10-27 12:50:31 475

原创 git常用命令(持续更新)

git日常使用

2021-09-29 10:13:23 167

原创 The ‘mode‘ option has not been set, webpack will fallback to ‘production‘ for this value. Set ‘mode‘

错误截图解决方法:在项目的webpack.config.json文件中添加mode属性值,如下图mode的值只能是"development",“production”,“none”, 修改之后 运行npm run build 错误消除

2021-08-31 09:36:29 428

原创 用stringstream分割字符串遇到的一个奇怪的事情

#include<bits/stdc++.h>using namespace std;int main(){// freopen(".../.txt","w",stdout); ios::sync_with_stdio(false); string suffix[1000]; string s; getline(cin,s); sulen=0; stringstream ss(s); while(ss>>suffix[sulen++]) cout<&lt

2021-05-07 18:15:01 99

原创 指针形参

今天在写一道关于链表的题的时候,发现在调用函数时传入的指针实参在进入函数后,函数的形参是实参的一个副本,子函数执行完毕,形参就会消亡,并不会改变实参的值struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }};void print(ListNode *head){ ListNode *p=head; while(p!=

2021-05-03 21:38:37 196 2

原创 Windows SSH 远程登录错误解决办法 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

最近在Windows电脑上重新安装了虚拟机,并给虚拟机分配了原先的IP地址,今天用powershell ssh连接虚拟机时产生以下的报错这里我们需要先讲解一下known_hosts文件,什么是known_hosts文件。A通过ssh首次连接到B,B会将公钥1(host key)传递给A,A将公钥1存入自己的known_hosts文件中,以后A在连接B时,B依然会传递给A一个公钥2,OpenSSH会核对公钥,通过对比公钥1和公钥2是否相同来进行简单的验证,如果公钥不同,OpehSSH会发出警告,避免受到

2021-03-26 23:24:09 1841

原创 Poj 3667 Hotel(线段树)

题目链接思路用线段树维护三个最值ms:在区间中连续最大的空房间数量ls::在区间中左边连续的最大空房间的数量rs:在区间中右边连续的嘴阀空房间的数量query在询问的过程中,优先判断左儿子的空房间数量ms是否满足条件,这样能保证如果存在答案,答案总是最靠左的update基本和带修的线段树的update函数一样代码//#pragma GCC optimize(2)//#include<bits/stdc++.h>#include<cstdio>#in

2021-02-01 18:09:19 115

原创 Windows环境下Pycharm进行Scrapy框架的安装

什么是scrapy?爬虫中封装好的一个明星框架。功能:高性能的持久化存储,异步的数据下载,高性能的数据解析环境的安装mac或者linux:pip install scrapywindows环境下安装比较繁琐一点,需要先安装几个scrapy依赖的库先安装wheel库pip install wheel2.下载twisted库,下载地址为https://www.lfd.uci.edu/~gohlke/pythonlibs/ #这是一个非常实用的python包网站,里面的py

2021-01-26 10:42:30 367 2

原创 爬虫过程中获取网页标签内的中文乱码的解决方法

第一种方法手动设置响应数据的编码格式response=requests.get()response.encoding='utf-8'第二种方法如果第一种方法还是不能解决问题的话,这个是通用处理中文乱码的解决方案name-tree.xpath()[0]name.encode('iso-8859-1').decode('gbk')...

2021-01-23 22:27:06 264

原创 Tunnel Warefare(线段树)

Tunnel Warefare题意可以理解为开始的时候有一条链,有三种操作:1、D n :将链从位置n的地方断开2、R : 将上一个断开的位置接上3、Q n:包含位置n的最大连续链的长度题解因为是写的线段树的专题,而且看操作明显也是线段树,但是想了好久也没有想明白用线段树维护什么,看了其他大佬的博客才顿悟。线段树的节点需要维护三个变量maxx:该区间内最大的连续链的长度lmax:从左端点开始往右扩展的最大连续的长度rmax:从右端点开始往左扩展的最大连续的长度具体的解释.

2020-12-02 14:52:34 150

原创 POJ Map Labeler(2-Sat)

Map Labeler题意有一些点,现在要对每个点构建一个正方形,这个点可以作为此正方形的上边界的中点或者是下边界的中点,对每个点构建的正方形的边长是相等的,要求构建的这些正方形不可以重叠,但是边界可以重叠,求可以构建的正方形的最大边长是多少?题解对于一个点,要么向上构建正方形,要么向下构建正方形,只有两种情况,二分答案,用2-Sat判断是否满足。2-Sat最关键的也是最难的就是建图了:对于点i,x是向上构建,x^1是向下构建。点j对于y雷同,尝试当前边长m1.如果abs(Xi-Xj)>.

2020-11-17 21:09:45 88

原创 HDU Bit Magic (2-Sat)

Bit Magic题意已知一位数组a[]和二维数组b[][]满足以下关系给定数组b[][],问是否存在数组a[],如果存在,输出"YES",否则输出"NO"题解写的是2-Sat的专题,想了好久都没想到怎么和2-Sat扯上关系,后来看了题解,说是按位进行2-Sat,就知道要怎么做了。因为位数最多不超过31位i,我一开始想的是从数组b[][]中找到条件,对这31位综合起来只进行一次2-Sat,后来T掉了,但是想了想复杂度是不会T的,现在还想不明白。后来只好对每一位建图,对每一位进行一次2-Sat.

2020-11-17 09:14:58 97

原创 Poj Wall(凸包)

Wall题意已知一个多边形的城堡,现在用用最少的石头建造环绕城堡的城墙,但是城墙不能离城堡超过一定的距离L。问这个城墙最小的长度。思路首先知道,对于一条边,我们只需将它往外平移L个长度即可,至于顶点肯定做一个半径为L的圆(一部分)将两边连接起来,如果该顶点是一个凹点,那肯定没有将两边的点直接相连短,所以需要先构造凸包(如果不知道为什么要构造凸包,可以画一下,很好看出来)。至于圆弧的那部分,需要计算角度,容易知道图中角度1和角度2互补,先将角度2利用点乘公式(不能用叉乘,因为用asin函数一个值对应.

2020-10-22 17:53:43 163

原创 POJ A Round Peg in a Ground Hole (几何)

A Round Peg in a Ground Hole题意有一个多边形和一个圆,如果多边形不是凸多边形的话输出“HOLE IS ILL-FORMED”;如果圆在多边形内部则输出“PEG WILL FIT”,否则输出“PEG WILL NOT FIT”。思路先对多边形的顶点极角排序,用叉乘判断多边形是否是凸多边形。然后用叉乘判断圆心是否在多边形内,如果是的话,求出圆心到多边形每条边的距离与半径作比较,进而得出答案。 #pragma GCC optimize(2)//#include<b.

2020-10-21 09:31:14 67

原创 POJ Line of Sight (几何)

Line of Sight题意在房子和人行道之间有若干障碍物,它们都是用线段表示的,且都平行于x轴,问在人行道上能看到整个房子的最大连续长度是多少?思路数据中有障碍物不在房子和人行道之间的情况,这种情况不用考虑。这道题直接求答案不好求,我们可以逆着思考,先把由每个障碍物挡住的连续区间求出来,然后在总的人行道上找出没有被这些区间覆盖的最长的连续区间就是答案了。求一个障碍物挡住的区间:代码#pragma GCC optimize(2)//#include<bits/stdc++.h&.

2020-10-21 09:08:08 136

原创 POJ Pipe (几何)

Pipe题意有一个弯形的管道,给出每个上拐点的坐标,起点和终点也视为拐点。下拐点的y坐标是上拐点y坐标-1,x坐标不变,问从管道的左端点射出一条光线,光线能够到达的最远的x坐标是多少?思路这道题我考虑了极限法,即最远的光线一定经过两个拐点(可能都是上拐点,或者都是下拐点,也可能一个上拐点一个下拐点,当然最远的光线不止一条,但肯定有一条经过两个拐点,可以平移得到),然后枚举两个拐点构成的直线,判断是否合法,如果合法求它能到达的最远的x坐标。如何判断该直线是否与管道相交呢?我是求出相应的y坐标与上下拐.

2020-10-19 12:23:18 123

原创 线性筛法

看了好多线性筛,把代码整理一下。看之前请先看我在文章中的链接,我写这篇文章的目的主要是我在学习中,对有些不懂地方的注释,以及我的理解。参考链接各种线性筛法的前提是知道线性筛素数的原理,具体的原理我贴下这位大佬的博客线性筛素数的原理我是按照每个数都是被他最小的质因子筛去的。然后是线形筛欧拉函数、约数个数、约数和、乌比莫斯函数。具体讲解传送门线性筛素数代码和解释const int MAX_N=1e6+7;int cnt=0,pri[MAX_N];bool is_p[MAX_N]; vo.

2020-10-12 12:24:46 236 1

原创 Poj Kadj Squares (几何)

Kadj Squares题意给N个正方形的边长,沿着左下顶点逆时针旋转45度放置,此时一顶点在x轴上。第一个正方形的一顶点在y轴上,从左向右一次放置,允许边重合但不允许面积相交,求那些正方形从上往下看时可以被看到。思路一开始我是先求出来b的坐标,进而知道左右端点的坐标,然后判断举矩形是否被覆盖,不知道是写错了还是被卡了精度。后来发现我们可以将边长扩大2\sqrt 22​倍,这时求的左右端点就都是整数了。然后根据左右端点判断是否被覆盖即可。代码#pragma GCC optimize(2)/.

2020-10-08 16:06:08 101

原创 浙江省赛 CONTINUE...? (思维)

CONTINUE…? 题意班里有N名同学,编号为1、2、3……N,第i名同学有i个宝石。让我们将这N名学生分成G1,G2,G3,G4四个组,且满足以下规则每一个同学仅且只能分到一个组女同学只能分到G1或者G2组,男同学只能分到G3或者G4组 (这N个同学的性别会以字符串的形式给出,‘1’表示男同学,‘0’表示女同学)G1+G3的宝石数量等于G2+G4的宝石数量允许有一个组为空问这N个同学各自分到了那一组,如果答案有多种,随意输出一种即可。思路我们先考虑不可能的情况, 假设:.

2020-10-03 20:10:26 82

原创 POJ The Doors (构图+最短路)

The Doors思路这个题最难的就是建图了,建图之后求个最短路也就出来了,说下我的建图方法,首先我用pos[ ] 数组将起点和终点以及每个墙线段的端点作为图的顶点(去除墙根的两个点,因为没有意义)。然后用 seg[][]数组表示每个墙的各个线段的信息,seg[i][] 表示第i个墙的信息,这个数组的目的主要是为了:遍历pos[]数组的每两个点判断是否能建边,如果这两个点形成的线段被之间的墙挡住了(与该墙中某一个线段相交),就无法建边,否则建边。这里我再说一下判断线段a-b和c-d是否相交如何判断.

2020-09-28 10:15:53 107

原创 穷游焦作周边之大沙河

题记本人是河南理工大学的一名大三的学生,学习的计算机转专业,来焦作已经有三年了。因为兴趣,参加了学院的ACM协会(现在称为算法工作室),我有三大兴趣爱好,敲代码,骑行,摄影。在闲暇之余,回来一场说走就走的骑行(当然是在焦作周边哈),很多时候没有规划,跑到什么地方是什么地方,这样做的勇气是有手机啊,回不去就直接导航回去了。所以各位出去游玩的时候一定要保持手机有电!大一大二的时候焦作周边基本玩的差不多了。转眼都到大三了,突然想写点东西,于是我决定,接下来的一年再次游焦作周边,写下骑行日记,希望给学弟学妹们一.

2020-09-26 11:22:39 387

原创 Poj Intersecting Lines (求直线交点)

思路有两个公式1.已知两点坐标(x1,y1,),(x2,y2).求直线方程(一般形式)Ax+By+C=0Ax+By+C=0Ax+By+C=0A=y2−y1,B=x1−x2,C=x2∗y1−x1∗y2A=y2-y1,B=x1-x2,C=x2*y1-x1*y2A=y2−y1,B=x1−x2,C=x2∗y1−x1∗y22.已知两直线方程(一般形式)A1x+B1y+C1=0A_1x+B_1y+C_1=0A1​x+B1​y+C1​=0A2x+B2y+C2=0A_2x+B_2y+C_2=0A2​x+B2.

2020-09-25 16:14:14 72

原创 Poj Segments (用叉乘判断线段相交)

Segments题意给出一些线段,问是否存在一条直线,使得这些线段在该直线上的投影有公共点思路我看一个大神的博客后,才知道该问题可以转化为是否存在一条直线m与所有的线段相交,与m垂直的直线l就是所求的直线。我们可以枚举两个线段的端点两两组合( 两个端点取自不同的线段),作为直线m的一个线段(实际上因为所给的线段是有限的,所以如果存在直线m的话,完全可以取该直线的一段与给定的所有线段相交),为什么我们枚举两个不同线段的两个端点所形成的直线就可以呢?假设这条直线存在,我们总是可以将该直线平行移动,直.

2020-09-24 20:25:11 174

原创 HDU 1506 Largest Rectangle in a Histogram 单调栈

题意求直方图最大矩形的面积思路这个题和Passing the Message思路差不多(用单调递减栈维护区间最小值逐渐更新答案。本题是用单调递增栈维护区间最大值逐渐更新答案,用resl[i]记录左边比hei[i]大(含等于)的值的最小下标。遍历到hei[i]的时候,如果栈顶的元素比hei[i]大,就将res[Q.top()]的值更新resl[i], 然后出栈,如果栈顶的值比hei[i]小,就直接入栈。然后再求resr[]数组。resr[i]存的是在i的右边比他大的值的最大下标。代码#prag.

2020-09-23 09:54:39 64

原创 HDU Passing the Message 单调栈

Passing the Message题意给出一组数,求每一个数左边(和右边)连续比他小的数中最大的数的位置。思路我们先考虑如何求它的左边连续比它小的数中最大数的位置,这就用到一种简单的数据结构了——单调栈单调栈:单调栈实际上就是栈,只是利用了一些巧妙的逻辑,使得每次新元素入栈后,栈内的元素都保持有序(单调递增或单调递减),这里我们要用到是单调递减栈(即从栈底到栈顶下标是递增的,但是数据是递减的)顺便说一下,单调递增栈(从栈底到栈顶下标是递增的,但是数据也是递增的)。原理的话看完代码你品你细品.

2020-09-22 20:00:14 94

原创 HDU Max Sum of Max-K-sub-sequence 单调队列

Max Sum of Max-K-sub-sequence题意给出一个有N个数字(N<=10^5)的环状序列,让你求一个和最大的连续子序列。这个连续子序列的长度小于等于K。思路借鉴的这位大佬的博客看完思路,结果敲WA了。 然后看了看大佬的代码后有一点不是很理解,遍历的是i,为什么将对sum[i-1]进行操作,最后求tmp的时候,又用到了sum[i], 后来想明白了。假如遍历到了i,用单调队列维护的是区间[sum[i−k],sum[i+1−k]...,sum[i−1]][sum[..

2020-09-22 16:18:37 111

原创 2020 CCPC网络选拔赛 3x3 Convolution

题意这个题我估计很多人都是卡到题意上了,妈的,公式一大堆。给一个N*N的矩阵和3∗33*33∗3的矩阵,起初给的3∗33*33∗3矩阵是K’,要想转换为K,只需将对应元素/矩阵元素的总和。定义矩阵C(A,K)=C(C[A][K],K)C(A,K)=C(C[A][K],K)C(A,K)=C(C[A][K],K)C[A][K]C[A][K]C[A][K]是这样计算的:以A[i][j]A[i][j]A[i][j]作为3∗33*33∗3矩阵的左上角,往右下扩展成3∗33*33∗3的一个矩阵,如果出边界了,默.

2020-09-21 09:22:23 230 2

原创 HDU-1937 Finding Seats 二维尺取法

Finding Seats题意找一个长方形,长方形中中的座位数量需要大于等于K,求满足条件的最小的长方形的面积思路原先想的是暴力加上剪枝,但是最坏复杂度还是1e8,果断T了。之后想到尺取法,只不过这种尺取法是二维的,只要稍加处理还是很好写的。我们遍历长方形的上下界,然后尺取的求满足条件的最优解。图中i指向长方形的上边界,j指向下边界。l,r指向的都是列,当r右移的时候sum+=3,当l右移的时候sum-=1,根据sum和K的大小比较确定l,r的移动方向当sum<K时,将r右移,否则,将.

2020-09-19 08:16:21 255

原创 HDU First One 尺取法

题意有一个整数数组a1,a2,a3,...ana_1,a_2,a_3,...a_na1​,a2​,a3​,...an​,定义S(i,j)=ai+ai+1+ai+2+...+ajS(i,j)=a_i+a_{i+1}+a_{i+2}+...+a_jS(i,j)=ai​+ai+1​+ai+2​+...+aj​求∑i=1n∑j=in(⌊log2S(i,j)⌋+1)∗(i+j)\sum_{i=1}^n\sum_{j=i}^n(\lfloor log_2S(i,j)\rfloor+1)*(i+j)∑i=1n​∑.

2020-09-18 16:01:55 118

原创 Vjudge Bound Found 尺取法的好题

题目链接Bound Found题意有N个整数数,可负可正。给一个数t,然后从这N个数中找一个连续的区间,使得这个连续区间和的绝对值最接近t,求出这个连续区间和的绝对值和以及区间的上下界。思路尺取法顾名思义,像尺子一样取一段,尺取法通常是对数组保存一对下标,即所选取的区间的左右端点,然后根据实际情况不断地推进区间左右端点以得出答案。什么时候可以使用尺取法?我自己的理解是:答案在一段连续的区间内或者是一段连续的区间(可能有多个区间满足情况,题目要求你求出一个最优的区间),一般区间都是从数组的左端

2020-09-16 20:30:13 155

原创 HDU 5356 序列变换

思路这个题是最长上升子序列的变形版本,要保证严格递增,需要满足a[j]−a[i]>j−ia[j]-a[i]>j-ia[j]−a[i]>j−i,化简得a[j]−j>a[i]−ia[j]-j>a[i]-ia[j]−j>a[i]−i,所以我们只需要求得序列b的LIS即可(b[i]=a[i]−ib[i]=a[i]-ib[i]=a[i]−i)代码#pragma GCC optimize(2)#include<bits/stdc++.h>using na.

2020-09-14 22:28:29 104

原创 最长上升子序列的两种复杂度解法

动态规划o(N2N^2N2)的解法我们先确定状态:dp[k]:表示以aka_kak​为终点的最长上升子序列的长度。可以看到,该状态满足无后效性然后确定递推式初始状态:maxLen(1)=1maxLen(k)=max {maxLen(i):1<=i<k,ai<aka_i<a_kai​<ak​,且k!=1}+1如果找不到这样的i,那么有maxLen(k)=1代码#include<bits/stdc++.h>using namespace std.

2020-09-14 22:19:52 353

空空如也

空空如也

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

TA关注的人

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