自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vscode杂项

vscode杂项

2023-06-15 17:32:08 132

原创 git 命令

git commit之后,撤销commit。

2023-05-10 20:36:01 159 1

原创 Linux 命令

CTRL+Alt+F1/F6:进入linux前台登录界面。CTRL+Alt+F2:进入linux后台登录界面。

2023-05-10 19:43:46 633

原创 数据结构--8.排序

数据结构--8.排序

2022-11-16 09:49:42 289

原创 数据结构--5.树与二叉树

数据结构--5.树与二叉树

2022-11-16 09:49:23 299

原创 唐迟阅读笔记

考研英语唐迟阅读方法论

2022-06-23 23:37:42 1766

原创 有关java默认构造 笔记

java默认构造

2021-12-23 16:51:00 458

原创 java多线程学习笔记

java多线程

2021-12-19 10:54:23 569 1

原创 AcWing 248. 窗内的星星(线段树 -- 扫描线)

AcWing 248. 窗内的星星思路:对于给定的点(星星)我们将他作为矩形的左下角构造两条线段 seg左(x,y,y+h-1,c) seg右(x+w-1,y,y+h-1,-c)然后线段树维护最大值#include<bits/stdc++.h>#include <unordered_map> using namespace std;template<class...Args>void debug(Args... args) {//Paramete

2021-12-01 21:51:35 92

原创 Codeforces Round #149 (Div. 2) E. XOR on Segment --二进制按位建树

Codeforces Round #149 (Div. 2) E. XOR on Segment#include<bits/stdc++.h> #include <unordered_map> using namespace std;template<class...Args>void debug(Args... args) {//Parameter pack auto tmp = { (cout << args << ' ',

2021-11-29 20:00:55 499

原创 计算机操作系统--思维导图

第一章:操作系统引论第二章:进程的描述与控制第三章:处理及调度与死锁第四章:进程同步第五章:存储器管理第六章:虚拟存储器第七章:输入/输出系统第八章:文件管理第九章:磁盘储存器管理第十章:多处理机操作系统第十一章:虚拟化和云计算第十二章:保护和安全...

2021-11-20 14:42:40 2736

原创 openstack部署过程6

Horizon网络服务1、安装软件2、修改配置文件3、重建apache的dashboard配置文件4、重新启动apache服务5、重新启动memcache服务6、验证操作1、安装软件yum install openstack-dashboard -y2、修改配置文件vim /etc/openstack-dashboard/local_settingsimport osfrom django.utils.translation import ugettext_lazy as _from open

2021-11-04 16:24:00 176

原创 FZU2105 Digits Count --线段树(区间与、或、异或)

FZU2105 Digits CountGiven N integers A={A[0],A[1],...,A[N-1]}. Here we have some operations:Operation 1: AND opn L RHere opn, L and R are integers.For L≤i≤R, we do A[i]=A[i] AND opn (here "AND" is bitwise operation).Operation 2: OR opn L RHere o

2021-10-29 15:32:09 280

原创 HDU 4578 - Transformation -- 线段树区间修改(p次方和,二进制每位建树)

HDU 4578 - Transformation题意:给你一个数组,初始值为零,有四种操作1)“1 x y c”,代表 把区间 [x,y] 上的值全部加c2)“2 x y c”,代表 把区间 [x,y] 上的值全部乘以c3)“3 x y c”, 代表 把区间 [x,y]上的值全部赋值为c4)“4 x y p”,代表 求区间 [x,y] 上值的p次方和1<=p<=3思路:注意到p最多只有3因此我们可以在每个节点中维护好这个节点区间所有数和的1,2,3次方而对于操作1,2,3我

2021-10-26 20:48:30 97

原创 openstack部署过程5

目录Neutron服务安装【控制节点】1、创库授权2、创建用户,关联角色3、创建Neutron服务并注册API4、安装并配置Neutron安装相关软件包配置neutron组件配置ML2组件配置LinuxBridge配置L3配置DHCP配置元数据代理为Nova配置网络服务5、同步数据库Neutron服务安装【计算节点】1、安装软件2、修改计算节点neutron配置文件配置neutron组件配置LinuxBridge配置nova.conf启动验证Neutron服务安装【控制节点】1、创库授权连接数据库m

2021-10-21 17:20:12 319

原创 HUD 3308 LCIS -- 线段树

HUD 3308 LCIS#include<bits/stdc++.h>#include <unordered_map>using namespace std;template<class...Args>void debug(Args... args) {//Parameter pack auto tmp = { (cout << args << ' ', 0)... }; cout << "\n";}ty

2021-10-19 15:20:35 92

原创 POJ 3667 Hotel -- 线段树

POJ 3667 Hotel //#include<bits/stdc++.h>#include<iostream>//#include <unordered_map>#include<algorithm>using namespace std;//template<class...Args>//void debug(Args... args) {//Parameter pack// auto tmp = { (cout &l

2021-10-18 17:38:31 77

原创 操作系统--进程控制总结

2021-10-17 17:05:30 201

原创 codeforces Sum of Medians -- 线段树

D. Sum of Medians有三种类型的操作(1)“add x”,表示往集合里添加数x。(2)“del x”,表示将集合中数x删除。(3)“sum”,求出从小到大排列的集合中下标模5为3的数的和。集合中的数都是唯一的线段树维护某个区间的数的个数cnt,再维护区间区间内数%5相同的和mod_sum#include<bits/stdc++.h>#include <unordered_map>using namespace std;template<clas

2021-10-16 19:58:48 138

原创 hdu 2795 Billboard -- 线段树

hdu 2795 Billboard以h建立线段树维护最大值每个节点初始化最大值为w对于每次改,从最左端开始找满足要求的位置//#include<bits/stdc++.h>#include<iostream>#include<vector>//#include <unordered_map>using namespace std;//template<class...Args>//void debug(Args... args)

2021-10-15 21:28:06 114

原创 POJ 2828 Buy Tickets --线段树

POJ2828 Buy Tickets后面以此类推则我们每次查找的是排除确定好的pos后对应的新pos所在数组的位置用ans数组存值即可//#include<bits/stdc++.h>#include<iostream>#include<vector>//#include <unordered_map>using namespace std;//template<class...Args>//void debug(Args..

2021-10-14 21:46:18 113

原创 openstack部署过程4

目录一、Placement服务安装1、创库授权2、创建plancement用户,关联角色3、创建服务实体和后端api4、安装并配置Plancement4.1. 手动修改文件内容4.2. 命令行修改文件内容4.3. 同步数据库4.4. 重启httpd服务5.检查Placement服务状态二、Nova服务安装【控制节点】1.创库授权2.创建nova用户,关联角色3.创建服务实体和后端api4、安装并配置Nova4.1.安装nova相关软件包4.2.编辑vim /etc/nova/nova.conf文件4.3.同

2021-10-14 19:12:39 412

原创 HDU 1698 Just a Hook--线段树

题意:给你T组数据,N个数(初始时每个数的值为1),M个操作,每个操作把区间[a,b]里的数更新为c,问最后这N个数的和是多少题解:懒标记维护下即可#include<bits/stdc++.h>#include <unordered_map>using namespace std;template<class...Args>void debug(Args... args) {//Parameter pack auto tmp = { (cout &lt

2021-10-13 17:05:33 84

原创 2021中国大学生程序设计竞赛(CCPC)- 网络选拔赛(重赛)Monopoly

HDU 7130 Monopoly对于题目来说我们要有一个前缀和sum[i]sum[i]sum[i]:代表每走一步能得到的价值一个总和SSS:走完一轮后的总和一个set<ll>bucket[N]set<ll>bucket[N]set<ll>bucket[N]:(桶)存放前缀和模S相同的数的集合一个map<ll,ll>_hashmap<ll, ll>\_hashmap<ll,ll>_hash:模数转化为桶的位置(离散化)一个m

2021-10-12 20:52:17 453 5

原创 操作系统--进程互斥的硬件实现方法

中断屏蔽法TS(TSL)指令Swap指令

2021-10-09 10:51:12 136

原创 操作系统--进程互斥的软件实现方法

单标志法并发运行的问题:单标志法违反了空闲让进的原则双标志先检查法并发运行的问题:双标志先检查法违反了忙则等待的原则双标志后检查法并发运行的问题:违背了空闲让进和有限等待的原则Peterson算法手动推导:一:1,2,3,6,7,8二:1,6,2,3三:1,3,6,7,8四:1,6,2,7,8Peterson算法用软件方法解决了进程互斥问题,遵循了空闲让进、忙则等待、有限等待三个原则,但是依然未遵循让权等待的原则(没有放弃处理机)。...

2021-10-09 10:39:40 154

原创 openstack部署过程3

Glance服务安装1、创库授权连接数据库mysql -u root -p创建glance数据库CREATE DATABASE glance;授予glance数据库权限,然后退出GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \ IDENTIFIED BY 'GLANCE_DBPASS'; #改密码GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \ IDENTIFIED

2021-10-08 19:18:37 240

原创 openstack部署过程2

写在前面:配置的密码非常多,密码还是统一的好(/dog目录KeyStone服务安装一.创建KeyStone库并授权1.连接数据库2.创建keystone数据库3.授予keystone数据库权限,退出二.安装KeyStone相关软件包三.修改keystone.conf1.直接修改2.openstack-config修改(两种方法都可以)四.同步数据库五.初始化Fernet keys六.配置及启动HTTP服务七.创建服务实体和API端点1.创建临时身份验证令牌用来初始化的服务实体和API端点2.创建服务实体和

2021-10-05 16:19:58 332

原创 2018湖南省省赛 H 千万别用树套树--线段树\树状数组

求区间[l,r][l,r][l,r]满足条件的线段问题转化为求1.区间[l+1,n][l+1,n][l+1,n]中存在多少条线段的左端点(这个区间的有线段的左端点出现说明者条线段不完全覆盖)2.区间[1,r−1][1,r-1][1,r−1]中存在多少条线段的右端点(同理上)答案等于当前线段的条数减去上面不满足要求的条数(容斥原理)用简单的权值线段树维护上述值#include<bits/stdc++.h>#include <unordered_map>using nam

2021-10-04 20:12:20 81

原创 openstack部署过程1

openstack部署过程1名称IP地址主机名称控制节点192.168.56.10Controller计算节点1192.168.56.20Computer1计算节点2192.168.56.30Computer21.基础环境准备使用VMware初始化三台虚拟机controller节点配置这里安装了图像化界面GNOME Desktop( 方便偷懒 ????设置静态IP使用命令 vi /etc/sysconfig/network-scripts/i

2021-10-03 11:37:04 464

原创 The 2021 ICPC Asia Regionals Online Contest (I) A Busiest Computing Nodes--线段树

题意:某系统有k个内存块,用户提出了n个请求,每个内存块每次只能处理一个请求。如果某个请求到达时,所有内存块都被占用,则该请求被忽略(永不被执行),否则将该请求交给某个内存块处理(从i%k,(i+1)%k ,个块依次循环向右查找第一个空闲的块,然后把当前请求提交给这个块)。试求处理请求最多的内存块号。#include<bits/stdc++.h>#include <unordered_map>using namespace std;template<class...Ar

2021-09-24 20:05:33 302

原创 AcWing 285. 没有上司的舞会--树形DP

AcWing 285. 没有上司的舞会题目描述Ural 大学有 N 名职员,编号为 1∼N。他们的关系就像一棵以校长为根的树,父节点就是子节点的直接上司。每个职员有一个快乐指数,用整数 Hi 给出,其中 1≤i≤N。现在要召开一场周年庆宴会,不过,没有职员愿意和直接上司一起参会。在满足这个条件的前提下,主办方希望邀请一部分职员参会,使得所有参会职员的快乐指数总和最大,求这个最大值。输入格式第一行一个整数 N。接下来 N 行,第 i 行表示 i 号职员的快乐指数 Hi。接下来 N−1 行,

2021-09-15 20:46:27 87

原创 Codeforces Round #739 (Div. 3)

Codeforces Round #739 D. Make a Power of Two题意:给定数字num,给定两种操作1.从右边加入一个数2.删除任意一个数问最少多少次操作后所给数字能变成2n2^n2n的形式思路:注意到因为是从右边加入一个数字所以之前数字能在一个2的某次幂满足要求越多越好我们将[20,264][2^0,2^{64}][20,264]所有的数打表打出来,然后一个一个计算这个数变成2的某次幂的所需步骤取最小的即可。匹配的过程类似于KMP的过程#include<

2021-08-27 16:21:12 63

原创 快速幂学习笔记

快速幂,二进制取幂(Binary Exponentiation,也称平方法),是一个在 Θ(log⁡n)\Theta(\log n)Θ(logn) 的时间内计算 ana^nan 的小技巧,而暴力的计算需要 Θ(n)\Theta(n)Θ(n) 的时间。而这个技巧也常常用在非计算的场景,因为它可以应用在任何具有结合律的运算中。其中显然的是它可以应用于模意义下取幂、矩阵幂等运算,我们接下来会讨论。算法描述计算 aaa 的 nnn 次方表示将 nnn 个 aaa 乘在一起:an=a×a⋯×a⏟n 个&

2021-08-25 21:08:31 74

原创 FFT中蝴蝶变换

首先我们有一个bitbitbit位的二进制数的所有组合构成的数组(即[1,2bit)[1,2^{bit})[1,2bit)的所有数)其组合所有方案数为len=2bitlen=2^{bit}len=2bit则我们从小到大求每个数的二进制翻转的数公式:reverse[x]=⌊reverse⌊x2⌋2⌋+(x(mod2))∗(len2)reverse[x]=\lfloor \frac{reverse \lfloor \frac{x}{2} \rfloor}{2} \rfloor+(x\pmod2)*(\

2021-08-25 19:35:12 1056

原创 快速傅里叶变换 FFT 学习笔记

概述离散傅里叶变换(Discrete Fourier Transform,缩写为 DFT),是傅里叶变换在时域和频域上都呈离散的形式,将信号的时域采样变换为其 DTFT 的频域采样。FFT 是一种高效实现 DFT 的算法,称为快速傅立叶变换(Fast Fourier Transform,FFT)。它对傅里叶变换的理论并没有新的发现,但是对于在计算机系统或者说数字系统中应用离散傅立叶变换,可以说是进了一大步。快速数论变换 (NTT) 是快速傅里叶变换(FFT)在数论基础上的实现。在 1965 年,Coo

2021-08-24 16:33:25 356

原创 bsgs(求解高次同余方程)学习笔记

基础篇BSGS(baby-step giant-step),即大步小步算法。常用于求解离散对数问题。形式化地说,该算法可以在 O(p)O(\sqrt{p})O(p​) 的时间内求解ax≡b(modp)a^x \equiv b \pmod pax≡b(modp)其中 a⊥pa\perp pa⊥p。方程的解 xxx 满足 0≤x<p0 \le x < p0≤x<p。(在这里需要注意,只要 a⊥pa\perp pa⊥p 就行了,不要求 ppp 是素数)例题:3846 [TJOI200

2021-08-23 12:32:47 259

原创 拉格朗日插值学习笔记

P4781 【模板】拉格朗日插值方法 3:拉格朗日插值法根据多项式除法那么我们会有:f(x)≡f(a)(mod(x−a))f(x)\equiv f(a)\pmod{(x-a)}f(x)≡f(a)(mod(x−a))这是显然的,因为 f(x)−f(a)=(a0−a0)+a1(x1−a1)+a1(x2−a2)+⋯+an(xn−an)f(x)-f(a)=(a_0-a_0)+a_1(x^1-a^1)+a_1(x^2-a^2)+\cdots +a_n(x^n-a^n)f(x)−f(a)=(a0​−a0​)

2021-08-22 15:38:35 120

原创 高斯消元学习笔记

高斯消元高斯消元法(Gauss-Jordan elimination)是求解线性方程组的经典算法,它在当代数学中有着重要的地位和价值,是线性代数课程教学的重要组成部分。高斯消元法除了用于线性方程组求解外,还可以用于行列式计算、求矩阵的逆,以及其他计算机和工程方面。夏建明等人之前提出了应用图形处理器 (GPU) 加速求解线性方程组的高斯消元法,所提出的算法与基于 CPU 的算法相比较取得更快的运算速度。二是提出各种变异高斯消元法以满足特定工作的需要。消元法理论的核心消元法理论的核心主要如下:

2021-08-19 17:26:52 434

原创 Lucas 定理学习笔记

Lucas 定理Lucas 定理用于求解大组合数取模的问题,其中模数必须为素数。正常的组合数运算可以通过递推公式求解(详见排列组合),但当问题规模很大,而模数是一个不大的质数的时候,就不能简单地通过递推求解来得到答案,需要用到 Lucas 定理。求解方式Lucas 定理内容如下:对于质数 ppp,有(nm) mod p=(⌊n/p⌋⌊m/p⌋)⋅(n mod pm mod p) mod p\binom{n}{m}\bmod p = \binom{\left\lfloor n/p \right\rf

2021-08-19 10:13:34 343

空空如也

空空如也

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

TA关注的人

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