iOS
OSI7层模型和TCP/IP模型
前言 在计算机网络领域中,OSI7层模型和TCP/IP模型是两个重要的概念。本文将对这两个模型进行介绍和比较,让大家了解它们的区别和联系。 目录前言OSI7层模型TCP/IP模型OSI7层模型与TCP/IP模型的区别总结 OSI7层模型 OSI(Open System Interconnection)层模型是国际标准化组织(ISO)制定的一个用于在计算机网络中通信的标准模型。此模型定义了一个7层的
C++之浅拷贝和深拷贝
浅拷贝:简单的复制拷贝操作 P1的生命周期结束后,判断m_PtrAge是否为空,很明显m_PtrAge的值是0x0100,不为空,释放m_PtrAge指向的内存;P2的生命周期结束后,同样判断m_PtrAge是否为空,很明显m_PtrAge的值也是0x0100,也不为空,再次释放m_PtrAge指向的内存空间;两次释放都指向同一块内存空间,造成堆区的数据重复释放,固有以上的crash信息,这就是
[ABC208E] Digit Products 题解
Digit Products 题目大意 求有多少个不大于 (n) 的正整数,使得该正整数各位乘积不大于 (k)。 思路分析 观察数据范围,首先考虑数位 DP。 考虑设计记忆化搜索函数 dfs(int pos,bool limit,bool lead0,int mul) 表示当前枚举到第 (text{pos}) 位,第 (text{pos}) 位是否受到限制,是否存在前导零,当前乘积为 (text{
[ABC207E] Mod i 题解
Mod i 题目大意 给定一个序列 (a),问将其划分成若干段,满足第 (i) 段的和是 (i) 的倍数的划分方案的个数。 思路分析 考虑 DP,设 (f_{i,j}) 表示将序列中前 (i) 个数划分成 (j) 段,且满足条件的划分方案的个数,容易得出状态转移方程: [f_{i,j}=sum f_{k,j-1}(sum_{h=k+1}^i a_ibmod j=0) ]直接转移的复杂度是 (O(n
[ABC205E] White and Black Balls 题解
White and Black Balls 题目大意 将 (n) 个白球,(m) 个黑球排成一列,要求满足 (forall iin[1,n+m],w_ile b_i+k),问存在多少种排法。 其中 (w_i) 表示第 (i) 个球前的白球数量,(b_i) 表示第 (i) 个球前的黑球数量。 思路分析 我们可以将一种排法映射成一条从 ((0,0)) 到 ((m,n)) 的路径。具体的说,从 ((0,
[ABC205F] Grid and Tokens 题解
Grid and Tokens 题目大意 给定 (n) 个点和一个 (Htimes W) 的网格,每个点可以放置在 ((A_i,B_i)) 到 ((C_i,D_i)) 的矩形中或不放,每一行或一列只能放置一个点,求最多能放多少个点。 思路分析 首先看数据范围,再结合题目给的限制条件,容易发现这是一道网络流。 考虑建图,因为行和列存在限制条件而网格中的点不存在,所以可以考虑将每一行和每一列分别建成一
[ABC202E] Count Descendants 题解
Count Descendants 题目大意 给定一颗以 (1) 为根的树,多次询问求某点的子树中深度为给定值的点的个数。 思路分析 对于每个深度开一个 vector,从大到小存下这个深度的所有点的 dfs 序开始值和结束值,询问时只需要在对应深度的 vector 中二分作差即可。 代码
[ABC204E] Rush Hour 2 题解
Rush Hour 2 题目大意 给定一张无向图,边带两个参数 (c_i,d_i),在 (t) 时间时经过第 (i) 条边所需的时间是 (c_i+lfloorfrac{d_i}{t+1}rfloor),求在时间 (0) 时出发,在每个点可以停留非负整数时间,从点 (1) 到点 (n) 所需的最短时间。 思路分析 首先,容易发现在时间 (t) 时经过第 (i) 条边后的总时间是:(t+c_i+lfl
P2487 拦截导弹 题解
拦截导弹 题目大意 给定若干元素,每个元素有 (3) 个属性 (t_i,h_i,v_i),求出一个使得对于 (forall i,j,i>j),(t_i>t_j,h_ile h_j,v_ile v_j) 均成立的最长的子序列 (a) 的长度。并计算每个元素在所有的可能的 (a) 方案中的出现概率。 思路分析 先看第一个问题: 按 (t) 排好序后容易发现其实就是一个二维的不上升子序列
P5012 水の数列 题解
水の数列 题目大意 对于给定的数列 (a),选择一个数 (x),定义其得分为数列中所有小于等于 (x) 的数形成的若干个连续区间的平方和除以 (x) 所得到的数。 现进行多次询问,每次询问给定两个数 (l,r),要求出一个得分最大的 (x),满足数列中所有小于等于 (x) 的数形成的若干个连续区间的个数在 (l) 到 (r) 之间。 强制在线。 思路分析 容易发现,满足条件的得分最大的 (x) 一
P2048 超级钢琴 题解
超级钢琴 题目大意 求出序列中长度在 ([L,R]) 中的所有区间的区间和前 (k) 大的区间的区间和。 思路分析 暴力做法是把所有符合条件的区间扔进堆里,再弹出 (k) 个,时间复杂度 (O((n^2+k)log n)),可以拿到 (20text{pts}) 的好成绩。 但真的有必要全部加进去吗?不! 我们设五元组 ((l,r,x,y,w)) 表示所有左端点在 (x),右端点在 ([l,r])
opensuse安装报错
用u盘安装opensuse时,报错: 是因为烧录启动盘时,不知什么原因,有些文件没有拷贝全,可以挂载opensuse的ios,然后把所有文件拷贝到u盘,跳过已经存在的。重启再次安装 版权声明:本文版权归作者所有,如需转载,请标明出处
P5445 路灯 题解
路灯 题目大意 在 (n+1) 个站点之间有 (n) 盏路灯,给定 (0) 时刻所有路灯的亮灭情况,在接下来的 (q) 个时刻,每时刻会发生以下两种事件之一: 切换某一盏路灯的亮灭。 询问两点之间存在多少时刻使得两点之间的路灯全部亮起。 思路分析 一道不错的数据结构。 首先分析题目,发现这是一个和点对连通性相关的问题,要查询点对之间连通的时间。点对不好处理,考虑扩充一维,将一维的点对变
MySQL Router高可用搭建
安装简介 高可用搭建 高可用及负载均衡测试 问题处理 一、安装简介 1.1 安装目的 MySQL官方提供了InnoDB Cluster,该集群由MySQL MGR和MySQL Router组成。MySQL MGR在数据库层面实现自主高可用性,而MySQL Router则负责代理访问。在部署完成后,MySQL Router将形成单点,如果出现故障,将会影响数据库集群的可用性。因此,为了提高数据
(华为机试)2. 简单错误记录
简单错误记录 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。 处理: 1.记录最多8条错误记录,对相同的错误记录(即文件名称和行号完全匹配)只记录一条,错误计数增加;(文件所在的目录不同,文件名和行号相同也要合并) 2.超过16个字符的文件名称,只记录文件的最后有效16个字符;(如果文件名不同,而只是文件名的后16个字符和行号相同,也不要合并) 3.输入的文件可能带路径,
1-2安装红帽Linux
软件下载: https://www.redhat.com/zh/technologies/linux-platforms/enterprise-linux/server/trial 安装虚拟机软件: 在虚拟机软件的安装向导界面单击“下一步”按钮,如图1-2所示。 图1-1 安装向导初始界面 图1-2 虚拟机的安装向导 在最终用户许可协议界面选中“我接受许可协议中的条款”
驱动开发:内核实现SSDT挂钩与摘钩
在前面的文章《驱动开发:内核解析PE结构导出表》中我们封装了两个函数KernelMapFile()函数可用来读取内核文件,GetAddressFromFunction()函数可用来在导出表中寻找指定函数的导出地址,本章将以此为基础实现对特定SSDT函数的Hook挂钩操作,与《驱动开发:内核层InlineHook挂钩函数》所使用的挂钩技术基本一致,不同点是前者使用了CR3的方式改写内存,而今天所讲的
CF1818D 题解
一、题目描述: 给你一颗 $n$ 个点,$m$ 条边的简单无向图,可能不连通。 我们定义 $鱼图$ 为满足以下条件的无向图: $包含恰好 1 个环,环上有 1 个特殊的结点 u ,u 除了连在环上的 2 条边外还正好有 2 条边连向不在此环上的结点。$ 求是否存 $鱼图$。若存在,输出 $YES$ 和这个鱼图。若不存在,输出 $NO$。数据范围 $1leq n,mleq 2ti
一篇文章带你详细了解axios的封装
axios 封装 对请求的封装在实际项目中是十分必要的,它可以让我们统一处理 http 请求。比如做一些拦截,处理一些错误等。本篇文章将详细介绍如何封装 axios 请求,具体实现的功能如下 基本配置 配置默认请求地址,超时等 请求拦截 拦截 request 请求,处理一些发送请求之前做的处理,譬如给 header 加 token 等 响应拦截 统一处理后端返回的错误 全局 loa
Linux命令备忘录
常用命令 源链接地址 线上查询及帮助命令 (2 个) man 查看命令帮助,命令的词典,更复杂的还有 info,但不常用。 help 查看 Linux 内置命令的帮助,比如 cd 命令。 文件和目录操作命令 (18 个) ls 全拼 list,功能是列出目录的内容及其内容属性信息。 cd 全拼 change directory,功能是从当前工作目录切换到指定的工作目录。 c
C++ 多态 虚函数virtual
先解释虚函数,对于基类,子类继承基类后可能会调用其某个函数FA,而不同的子类继承了同一个基类后需要基类内某个同样的函数FA但又不是同个作用,此时则会在对应的子类内对应重载派生出FA_B函数和FA_C函数,而这时要求FA为虚函数(virtual) 那为什么不各自写成一个函数B和C呢?这就是多态的意义 对于基类A和子类B,C有 则基类指针指向子类,此时调用其内函数 虽然是同一个类的同一个函