备忘录(仅供自用)
2026-08-19 20:39:01
发布于:上海
当数据量过大时,用 cin 和 cout 读写较慢,可以用 scanf 和 printf 进行格式化输入输出
换行一定要用 \n 代替 endl 啊
二分用 (l+r)/2 找中间数是个不好的习惯,可能会导致 l+r 数溢出导致变为负数,随后除以二会 mid 也是一个错误的负数索引,从而导致数组越界访问或程序崩溃,可以用 int mid=l+((r-l)>>1),不过位运算的优先级没加减乘除的优先级高,所以一定要加括号 牢发竟然没教我们
#define int long long 有时候也是个好东西,不过你 main 就要改 signed 类型了
再难的题你哪怕不会,良心(吗?)的出题人也会给你 30% 左右的分让你暴力的
观察完全二叉树,其最后一个结点编号为 ,其父亲结点的编号为 ,所以从 开始的结点都是叶子结点,因此结点数为 的完全二叉树其叶子结点个数为 个
二维前缀和数组
s[i][j]=s[i][j-1]+s[i-1][j]-s[i-1][j-1]+a[i][j];
二维前缀和求从 到 的元素和
ans=s[x2][y2]-s[x1-1][y2]-s[x2][y1-1]+s[x1-1][y1-1]
虽然但是,似乎没啥用 QAQ
全部评论 11
不要#define int long long,你会消失的

这玩意是 UB,只不过大部分评测机都能正常运行,而且如果你啥都开 long long 你会有两倍常数和空间/咦
2026-07-23 来自 广东
2那我int和long long转不清楚总是用#define int long long是不是完蛋了

2026-07-23 来自 上海
2我去第一次知道这个是幽闭
2026-08-02 来自 浙江
0+1\n
1周前 来自 浙江
0
出题人也会给你 30% 左右的分让你暴力的
那我0pts全TLE和一位啊



1周前 来自 浙江
1看似备忘录实则像分享日记一样会火这是真的
2026-08-05 来自 浙江
1真的假的,我发这么久了,照样还是只有我看
3小时前 来自 广东
0
点赞
2026-07-23 来自 浙江
1。
3小时前 来自 广东
0还有二位前缀和
2天前 来自 浙江
0建议下载个这个记笔记的挺好用

6天前 来自 湖北
0你说得对,但是我认为你 GO 更方便(
6天前 来自 上海
1竟然是秒回
6天前 来自 湖北
0神秘秒回男
6天前 来自 湖北
0

2026-07-25 来自 浙江
0我不是大佬
2026-07-25 来自 上海
1真的假的(来自平民的发问)
2026-07-25 来自 浙江
0Of course 1.
2026-07-25 来自 上海
1
刷个罐头
2026-07-24 来自 浙江
0事实上经常是暴力你都不会写
2026-07-23 来自 上海
0再难的题你哪怕不会,良心(吗?)的出题人也会给你 30% 左右的分让你暴力的
要真是这样的话S1=不得奔着200分去了(
2026-07-23 来自 上海
0还真是(
2026-07-23 来自 上海
1不过我说让你暴力没说你一定会拿到啊(
2026-07-23 来自 上海
1
不是
2026-07-23 来自 广东
0“换行一定要用 \n 代替 endl 啊”你在哪学到的
2026-07-23 来自 广东
0我记得\n比endl快好几倍
2026-07-23 来自 上海
0啊对
2026-07-23 来自 广东
0




















































有帮助,赞一个