自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 康托展开 and 逆康托展开

其实也就是,对于第i个位置,如果x < a[i],那么不管它后面的数如何排列,这个排列一点会比该排列小,也就是后面比它小的数 P(a[i]) * (n-i)!,找a[i]后面比它小的数的个数这一过程可以用树状数组优化,下面是洛谷模板以及ac代码;(2)然后令 t = x / fac[n-1],其中fac[n-1]就是n-1的阶乘,得到的t就是康托展开中的在i后面比a[i]小的数的个数,由此就能推出这个数是几;其中P(a[i])表示a[i]后面比a[i]大的数的个数,(n-i)!(1)首先将x - 1;

2024-03-31 23:15:16 394

原创 第二类斯特林数

它的格式很像卷积,可以利用FFT,实现O(nlogn)求出某一行,现在还太菜了遇不到,画个饼,等大二暑假再学。S(n,m):把n个球放入m个无区别的盒子里的方案数。通解:(图片在某位佬的博客偷的)

2024-02-03 17:25:00 361 1

原创 算法学习:根号分治

仔细想想,是把两种方法的缺点互相弥补了,第一种方法的缺点在于当x较小时复杂度过高,最坏能达到O(n),加了d的限制后,复杂度就是O(sqrt(n))了,第二种方法的缺点就是受到空间限制,x不能太大,加了d的限制,正好互补,总的时间复杂度能达到O(q*sqrt(n))。当x > d时,用第一种模拟去实现。再想第二种方法,可以用一个pre[i][j]来优化操作二,pre[i][j]表示模i等于j的和,这样就能O(1)得到操作二了,但是对于操作1,又需要枚举模数,去加在pre中,时间复杂度是O(x)。

2024-01-16 22:01:21 374

空空如也

空空如也

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

TA关注的人

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