自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数论之高斯消元

枚举每一列c找到绝对值最大的一行将该行换到最上面(第r行)将该行的第c列数字变为1把该行下面的第c列数字全部变为0代回求解。

2024-08-23 17:54:32 353

原创 扩展欧几里得算法

对于任意正整数a,b,一定存在非零整数x,y,使得。,其中,(a,b)是为最大公约数的倍数。

2024-08-23 09:40:29 138

原创 欧拉函数和快速幂

互质:互质是公约数只有1的两个整数,叫做互质整数。欧拉函数:欧拉函数,即 表示的是小于等于n并且和n互质的数的个数。比如说 φ(1) = 1。1.从1~n中去掉p1,p2....pk的倍数(此时可能存在多去的情况,例如一个数既是p1的倍数又是p2的倍数)2.加上所有pi*pj的倍数(此时如果一个数既是p1,p2的倍数又是p3的倍数,此时加三次减三次,没有变化但我们需要去除)3.减去所有pi*pj*pk4.加上pi*pj*pk*pd....依次类推合并得到。

2024-08-22 20:14:59 377

原创 数论之质数以及约数

在大于1的整数(不包含1)中,如果只包含1和本身这两个约数,就被成为质数,或者叫素数。

2024-08-21 21:28:40 1090

原创 Java之包装类

Java中的包装类(Wrapper Classes)是基本数据类型的对象包装类。Java为每个基本数据类型(如、等)提供了对应的包装类,使得基本类型可以被当作对象来处理。这些包装类位于包中。在JDK5的时候提出了一个机制:自动装箱和自动拆箱自动装箱自动装箱:把基本数据类型会自动的变成其对应的包装类自动拆箱:把包装类自动的变成其对象的基本数据类型在底层,此时还会去自动调用静态方法valueof得到一个Integer对象,只不过这个动作不需要我们自己去操作了。 总结: 包装类还提供了一些用于数值进制

2024-08-21 14:28:11 479

原创 Java常用API第三篇

是 Java 中用于格式化和解析日期和时间的类,它位于java.text包中。提供了将Date对象转换为指定格式的字符串,或者将字符串解析为Date对象的功能。Calendar代表了系统当前时间的日历对象,可以单独修改时间中的年,月,日.Calendar是一个抽象类,不能直接创建对象。

2024-08-20 18:42:44 547

原创 Java常用API第二篇

匹配:使用Pattern和Matcher类进行匹配。查找:使用find()方法查找下一个匹配。替换:使用方法进行替换。分割:使用split()方法按正则表达式分割字符串。/*有一段字符串:小诗诗dqwefqwfqwfwg12312小丹丹dqwefqwfqwfwg12312小惠惠要求1:把字符串中三个姓名之间的字母替换为vs要求2:把字符串中的三个姓名切割出来*/String s="小诗诗dqwefqwfqwfwg12312小月月dqwefqwfqwfwg12312小惠惠";

2024-08-19 18:40:21 1006

原创 Java常用的API

2147483648 没有正数与之对应,所以abs结果产生bug。

2024-08-17 19:22:30 252

原创 Java的多线程

我们需要完成的是如果桌子上面有食物就吃食物,十碗吃饱,如果没有,就等待。厨师则是判断桌子上面是否有食物,如果有,就等待,如果没有就做面条。例如,一个线程正在更新一个变量的值,而另一个线程同时读取这个变量的值,就可能导致读取到错误的数据。:当两个或多个线程相互等待对方释放资源,从而进入无限等待的状态,这种情况称为死锁。被唤醒的线程仍然需要竞争锁,只有获得锁的线程才能继续执行。如果有多个线程在等待同一个锁,具体唤醒哪一个线程是由JVM决定的。:在锁定的范围内,只有持有该锁对象的线程才能执行,其他线程必须等待。

2024-08-16 15:33:00 584

原创 Python基础知识点

其中与c++不同的在于:不需要在变量前声明变量的数据类型以及整除是//,幂运算是**(次方)

2024-08-12 18:24:09 139

原创 Java基础知识点

使用String当字符串操作简单且不频繁改变时。使用StringBuilder(单线程环境)/StringBuffer(多线程环境)当需要高效地改变单个字符串,尤其是在循环或多次操作中。使用当你需要构造有特定格式(如分隔符、前缀和后缀)的字符串序列时。C++

2024-08-11 16:11:42 832

原创 2024牛客暑期多校训练营7

同样,对于x轴上的圆心从l 到0,圆也是逐渐变小的。所以最大的两个圆是以原点为圆心,半径为l的圆,另一个是以(l,0)为圆心,半径为l的圆。在二维笛卡尔坐标系中,有一根长度为 l的细长棍,宽度可以忽略不计,垂直于 y 轴,左端点位于原点 O(0,0)。因此,只需要判断点(x,y)是否位于两个大圆其中一个圆的内部即可,是,那么就是可以击中,否则就不可击中。那么如果 h > m 的时候,总存在一个n,使得n*m >= h,这个时候的最小机器初始值是m。有一个小球,可以看作是一个点,位于 P(x,y)。

2024-08-10 13:48:51 425

原创 2024牛客暑期多校训练营6

2024牛客暑期多校训练营6

2024-08-04 11:22:00 696

原创 2024牛客暑期多校训练营4

也就是说,在区间 [l, r] 内,如果所有可能的两两组合都是朋友关系,那么这个区间就是一个友好区间。n 的范围是 1 到 1000000 m 的范围是 1 到 1000000 接下来的 m 行每行包含两个整数 u 和 v,表示一对朋友。对友好区间的解释:对于一个区间l,r要是一个友好区间当且仅当区间里面的人彼此之间都是好朋友。不难发现,对于一个区间[l,r]如果是一个好区间,那么[l,k],[k+1,r]也是好区间,那么我们就可以对于每一个人固定左端点,去寻找最大的右端点。长度为1的区间是友好区间)。

2024-07-27 20:00:24 333

原创 2024牛客暑期多校训练营3

如果使用的推力导致车辆撞墙,即当前距离小于助推器的推力,车会向前移动当前距离d,那么撞墙后反弹h - d,当 d是 g的倍数但小于 g时,反弹的距离可能使车更接近墙。否则,车将向前移动 d米,撞到墙上,并反弹 h−dh -米,之后停下,仍然面向墙。第一行输入包含两个正整数 n和 D( 1≤n≤100 1≤D≤1e18 ),分别表示助推器的数量和公式1赛车与墙之间的距离。其次,如果矩阵当中出现了一个8时(不是第一行,最后一行,也不是第一列和最后一列),除此之外,其余的都变为雷就行。输出9行,表示答案。

2024-07-25 15:12:50 597

原创 2024牛客暑期多校第二场

gcd(x,y)在二进制中表现为 x和 y自最低位起向上直到第一个不同位之前的所有连续相同位。(这个可以通过lowbit(x)来得到即x^(-x)求得):按位异或运算 x⊕y的结果在每一位上反映 x 和 y是否相同:相同则为 0,不同则为 1 (0^0 = 0)。因此,x⊕y的结果表示了 x和 y在哪些位上不相同。(8),通过x^lowbit(x)得到。因为这样会确保 x和 y仅在他们的最低设置位(x&(−x))上有所差异。既然这两者相等那么gcd ^ x = y,所以y = x^(x&(−x))

2024-07-21 22:04:40 240

原创 算法基础之滑动窗口

滑动窗口算法是一种常用于解决数组相关问题的技术,特别适用于需要处理连续数据块的情况。其基本思想是创建一个窗口,这个窗口可以是数组或列表的一个子集,随着算法的进行,这个窗口会在整个数据结构上从开始滑动到结束。这种方法可以帮助我们在保持效率的同时解决一系列问题,如计算最大值最小值、查找满足特定条件的子数组等。我觉得滑动窗口可以分为很多种类型,现在我只遇到过两种,以后遇到了在更新。

2024-05-28 22:41:29 487 1

原创 优先队列的注意点及题目

感想:这道题目没有太多技术含量,只需要用一个优先队列每一次维护一个结构体,结构体的成员分别是价格和数量。但是对于初学者的我,有很多可以注意的地方。结构体对象包含多个成员变量,且这些变量在创建对象时需要立即被初始化为特定值时,带参数的构造函数非常有用。这道题目我首先在结构体内定义了带有参数的构造函数。如果我在结构体内定义了带有参数的构造函数,那么我将不能声明一个结构体的数组。如果结构不含带参数的构造函数,那么就简单一点了,结构体代码如下。那么我们可以在某些情况下省略带参数的构造函数,什么时候需要呢?

2024-05-23 10:06:57 302 5

原创 数据结构之队列及优先队列

队列在外面生活中很常见,例如排队结账,付款等。那么我们不难发现,队列存在一种特性,就是先进先出(FIFO)。

2024-05-22 22:41:43 458 1

原创 Codeforces Round 946 (Div. 3)

З手机桌面- A - Codeforces。

2024-05-21 10:04:30 1802

原创 并查集练习题

数据结构之并查集-CSDN博客。

2024-05-20 21:45:14 658 1

原创 数据结构之并查集

路径压缩是指在执行查找操作的时候,让集合中的每个元素都直接指向根节点,这样可以减少时间复杂度。以下代码实现的是递归来找到某个元素的根节点// 递归查找根节点,同时实现路径压缩// 如果pre[x]不是自己,说明还没有找到根节点练习题.蓝桥幼儿园 - 蓝桥云课 (lanqiao.cn)

2024-05-20 18:11:22 2013 1

原创 二分答案练习题

P1873 [COCI 2011/2012 #5] EKO / 砍树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)对于本道题目,我们考虑用二分答案来枚举锯片的最高高度因为我们不难发现,随着锯片高度的升高,我们所得到的木头的材料是减少的,它们之间存在随着锯片高度升高,得到的木材材料递减的关系。满足单调性,这个时候,我们就可以考虑用二分答案来枚举答案的正确性。

2024-05-19 16:15:12 321 1

原创 二分练习题

二分练习题目-CSDN博客。

2024-05-19 15:32:47 219 1

原创 算法基础之二分及二分答案

当l=r - 1的时候,如果mid =(l+r)/2,此时mid = l,如果check是true,那就将l = mid = l ,那么就会进入死循环(l < r,while循环无法结束)当mid=(l+r+1)/2,此时,mid = r,如果check为true,l = mid = r,此时while循环结束。不能包含mid,mid在右半部分,肯定不符合性质,所以要从r-1开始查找边界。二分答案和整数二分的不同:二分答案枚举的是答案,整数枚举枚举的是下标。二分的本质并不是单调性,二分的本质是边界。

2024-05-19 15:31:41 1518 2

空空如也

空空如也

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

TA关注的人

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