一些可能不知道或不熟悉的有用但冷门的库函数
提取自洛谷日报 从 C++98 到 C++20,寻觅甜甜的语法糖们 中 C++98 到 C++14 的部分。
这是菜鸡作者写给自己看的,你认为有缺失可以在评论区说,但是不一定会添加。
函数所位于的库就不写了,反正都 #include<bits/stdc++.h>
了。
__lg(x)
:GNU 私货。返回 。__builtin
套皮实现,时间复杂度 ,常数很小。partial_sum(bg1, ed1, bg2)
:求 的前缀和,并存入以 为起始的地址。可以传入第四个参数作为加法。可以原地求前缀和。adjacent_difference(bg1, ed1, bg2)
:求 的差分,并存入以 为起始的地址。可以传入第四个参数作为减法。可以原地求差分。minmax(a, b)
:返回一个pair<>
,其first
为 ,second
为 。max(l)/min(l)
: 是一个初始化列表,返回 中最大 / 最小的元素。可以把恶心的max(max(a, b), max(c, d))
换成max({a, b, c, d})
辣!minmax(l)
: 是一个初始化列表,作用类比minmax(a, b)
。max/min/minmax_element(bg, ed)
:作用看名字。可以用来求某些 DP 题的最终解。iota(bg, ed, val)
:将 中的元素依次赋值为 可用于给并查集初始化。是iota
,不是itoa
,不要写混。hypot(x, y)
:返回 。accumulate(bg, ed)
求和,可以多传一个参作为加法。__builtin
系列
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?