鱼C论坛

 找回密码
 立即注册
楼主: zhangjinxuan

区间 gcd 与总和的和最大值问题,这个问题有点不会,望高人赐教,谢谢【重金悬赏】

[复制链接]
发表于 2023-6-6 11:31:20 From FishC Mobile | 显示全部楼层
找最大子区间的算法,改改应该用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-6 11:32:25 | 显示全部楼层
zhenjen 发表于 2023-6-6 11:31
找最大子区间的算法,改改应该用



那么我们怎么求出每个子区间的最大公因数呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-6 11:36:44 From FishC Mobile | 显示全部楼层
不知道,但可以上网查找
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-6 11:37:26 | 显示全部楼层
zhenjen 发表于 2023-6-6 11:36
不知道,但可以上网查找

网上找不到我才问的,chatgpt 回答的也是 O(N^2) 算法。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-6 11:40:40 From FishC Mobile | 显示全部楼层
时间复杂度要求是o(n)?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-6 11:41:09 | 显示全部楼层
zhenjen 发表于 2023-6-6 11:40
时间复杂度要求是o(n)?

是的,因为你看,1 <= n <= 1000000,但是 1 <= a_i <= 1000000,可以根据这一条下手
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-6 11:42:53 From FishC Mobile | 显示全部楼层
n是数据范围,那a_i是什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-6 11:43:18 | 显示全部楼层
zhenjen 发表于 2023-6-6 11:42
n是数据范围,那a_i是什么?


n 是数组长度,a_i 表示 a 的任一元素
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-6 11:44:18 From FishC Mobile | 显示全部楼层
n是长度,a是数字?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2023-6-6 11:45:19 | 显示全部楼层
zhenjen 发表于 2023-6-6 11:44
n是长度,a是数字?

n 是长度,a 是一个数组,a_i 表示 a 的第 i 个元素,在这里可能不太清晰,这个意思就是,a 的所有元素都大于等于 1,小于等于 1000000
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-6 11:46:20 From FishC Mobile | 显示全部楼层
时间复杂度没有要求。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-6 11:47:52 | 显示全部楼层
zhenjen 发表于 2023-6-6 11:46
时间复杂度没有要求。

时间复杂度自己想,想一想怎样的时间复杂度才能在 1s 以内通过此题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-6 11:56:13 From FishC Mobile | 显示全部楼层
zhangjinxuan 发表于 2023-6-6 11:47
时间复杂度自己想,想一想怎样的时间复杂度才能在 1s 以内通过此题。

我推荐看下找最大子区间的算法.算法时间复杂有on
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-6 12:07:44 | 显示全部楼层
zhenjen 发表于 2023-6-6 11:56
我推荐看下找最大子区间的算法.算法时间复杂有on

但是这里还有最大公因数,只有求和都会做嗷。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-6 20:28:00 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-6-7 10:07:19 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-6-8 14:14:06 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-6-8 20:53:38 | 显示全部楼层
maybe,可以分治?我不会,你可以试试要求GPT写出O(n)复杂度的代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-8 21:07:05 | 显示全部楼层
yinda_peng 发表于 2023-6-8 20:53
maybe,可以分治?我不会,你可以试试要求GPT写出O(n)复杂度的代码


分治

说详细点呢?说个“也许”有点半对不对的感觉。

我问了 GPT 的,大多都是 O(n^2)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-10 09:33:17 | 显示全部楼层
例子里面不应该是 gcd(9, 8, 16, 24) + 9 + 8 + 16 + 24 = 58 么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 09:10

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表