轻松的编程学习
首页
题库
学习路径
在线商城
能力地图
下载应用
登录 / 注册
菜单
第三步:单点修改
👁️ 0 人浏览
💬 0 人评论
❤️ 添加收藏
加上
fen_add
:给第
i
个加
v
,
往上一路加 lowbit
更新。
给第 2 个加 10 之后,
输出前 3 个的和
。
提交你的答案
请登录后提交答案。
去登录
← 第二步:前缀和与区间和
第四步:再写一个布隆过滤器 →
更多题目
让程序说出"你好"
让程序欢迎你
哪个命令能显示内容
哪里是指令,哪里是结果
让程序说出你的名字
这个程序会显示什么
代码编辑器
语言:
python3
c11
cpp17
Ctrl
+
Enter
运行
👩🏫 AI
▶ 运行代码
重置代码
打印代码
def lowbit(x): return x & (-x) def fen_build(a): n = len(a) t = [0] * (n + 1) for i in range(1, n + 1): j = i while j <= n: t[j] += a[i - 1] j += lowbit(j) return t def fen_prefix(t, i): s = 0 while i > 0: s += t[i] i -= lowbit(i) return s # TODO: 写出 fen_add:从 i 开始,t[i] 加 v,然后 i += lowbit(i),超过 n 停 A = [17, 24, 15, 13, 23] t = fen_build(A) fen_add(t, len(A), 2, 10) print(fen_prefix(t, 3))
本次输入:
输出:
👩🏫
AI
请登录后使用 AI 老师
×
登录后可获得解题思路、提示与错误分析。
去登录
关闭
🎉
恭喜你,回答正确!
系统判定:正确
我知道了
💬 题目评论
提交
全部评论
全部评论