摘要:
分块与莫队 莫队只学了不同,带修和回滚。 我太菜 分块九讲: 推博:「分块」数列分块入门1 – 9 by hzwer 代码直接看 loj 数列分块入门 2 对于块内排序即可。 数列分块入门 3 也是排序。 不同的是可以用 set 维护,比较方便。 数列分块入门 4 同线段树,写 tag 就行了。 数 阅读全文
摘要:
2024初三年前集训测试3 其实题还行。 夕景昨日(T1): 只要有不重合两段和相等,就可以分别取反 考虑最多构造 20 个,使其(按 \(2^0,2^1...2^n\) 构造最优)。 所以小于 20 暴力,大于 20 YES 即可 CODE #include<bits/stdc++.h> usin 阅读全文
摘要:
2024初三年前集训测试2 UU:这是我们最简单一场 菜,就多练练 华二(T2): 简单题。 直接组合。 考虑只有互质可以交换。 所以只要满足不互质的相对顺序不变。 将所有先扣下来在按回去,求组合数即可。 就是简单插板。 赛时光考虑 \(dp\) 了。 CODE #include<bits/stdc 阅读全文
摘要:
2024初三年前集训测试1 阅读全文
摘要:
字符串基础 拖了挺久的了,趁集训推完了。 Hash 个人感觉变化挺多的。 类似进制数。 多和二分结合。 核心代码 class HASH{ public: int HS[N]; inline void mk(char* s){For(i,0,strlen(s)-1,1) HS[i+1]=(1ll*HS 阅读全文
摘要:
初中信息奥赛模拟测试 终于是肯给 hzoi2024 整场模拟赛了。 题其实并不是很难。 但很有价值。 ZEW 的游戏 (T2) 显然是直接求斜率。 注意判 \(0\)。 因为绝对值小于 \(1000\),可以直接用小数。 正经应该是写个分数存,也不难实现。 小数: CODE #include<bit 阅读全文
摘要:
多线程对拍(来自 Eafoo (有改动) 首先先把它编译了,记得加一句 -pthread ,要不然编译不了 用法见博客 #include <bits/stdc++.h> using namespace std; void Black() { printf("\033[37m"); } void Re 阅读全文
摘要:
双指针 系统的学了一下。 链上问题: 一般是用一个快指针 f,一个慢指针 s。 这里默认起始时 \(f\gets head,s\gets head\) 判环: 每次:\(f\gets f+2,s\gets s+1\) 若前进后 \(f=s\) 则有环。 相当于追及。 求环的起点: 先每次:\(f\g 阅读全文
摘要:
c++ 版 #include<bits/stdc++.h> using namespace std; using llt=long long; using llf=long double; using ull=unsigned long long; #define endl '\n' #define 阅读全文
摘要:
基础容斥与二项式反演(广义容斥) 基础容斥: \[\left | \bigcup_{i=1}^nA_i \right |=\sum_{T\subseteq \{1,2,...,n\}}(-1)^{|T|-1}\left | \bigcap_{i\in T} A_i \right | \]一般用于求解 阅读全文