摘要: 哈希 树哈希,就是对于树的哈希 #include<bits/stdc++.h> using namespace std; #define ull unsigned long long int m,n; vector<int> son[60]; ull shift(ull x){ x^=x<<13; 阅读全文
posted @ 2024-02-27 23:45 妖灵梦 阅读(18) 评论(0) 推荐(0)
摘要: 单调栈 定义 一种栈,其中的元素满足单调性 解决NGE问题 NGE问题(Next Greater Element) #include<bits/stdc++.h> using namespace std; const int N=3e6+10; int n; int a[N],stk[N],f[N] 阅读全文
posted @ 2024-02-27 00:27 妖灵梦 阅读(15) 评论(0) 推荐(0)
摘要: 基数排序和计数排序 跟比较排序比起来,感觉复杂度开挂了 计数排序非常依赖于数值范围,是开了一个值域的桶,然后对着桶输出所有元素,在值域小的情况下非常的快 \(O(V+n)\) 计数排序还有一种权值线段树优化,可以解决大值域问题 \(O(n\log V)\),但是没有什么用删掉 基数排序可以看作计数排 阅读全文
posted @ 2024-02-27 00:27 妖灵梦 阅读(12) 评论(0) 推荐(0)
摘要: 随机化 使用随机化可以让某些算法在合法的时间内得到尽量正确的解(蒙特卡洛方法),或者在正确的情况下跑尽量少的时间(拉斯维加斯方法),期望是能接受的,是一种科学的技术方法。 比如字符串哈希,树哈希,序列哈希,各种哈希。 比如 AHC046 把,就是使用模拟退火算法,而且将修改也分成两种,按照某种概率选 阅读全文
posted @ 2024-02-27 00:16 妖灵梦 阅读(58) 评论(0) 推荐(0)