小编non*_*ter的帖子

总和小于或等于k的最长子阵列的长度

在一次采访中,我被问到这个问题:给定一些正整数s,找到最长子阵列的长度,使其所有值的总和小于或等于某个正整数k.每个输入始终至少有一个解决方案.该数组不是圆形的.

我开始编写动态编程解决方案,通过在0到k的越来越大的值中找到最大长度来工作.

这是我在python中的代码,里面有一个我似乎无法找到的错误,我的答案总是偏离几位数:

def maxLength(s, k):
    lengths = [0 for x in range(k)]
    for i in range(1,k+1):
        for j in range(len(s)):
            if s[j] <= i and lengths[i - s[j]] + 1 > lengths[i]:
                lengths[i] = lengths[i - s[j]] + 1
        if i + 1 == len(s):
            break
    return lengths[-1]
Run Code Online (Sandbox Code Playgroud)

输入1:s = [1,2,3], k = 4

输出1: 2

输入2: s=[3,1,2,1], k = 4

输出2: 3

python algorithm dynamic-programming

16
推荐指数
2
解决办法
6425
查看次数

如何将视频中的音频分段并转录成带时间戳的片段?

我想根据每行语音的内容将视频脚本分割成章节。脚本将用于为每一章生成一系列开始和结束时间戳。这类似于 YouTube 现在“自动章节”视频的方式。

.srt 转录本示例:

...

70
00:02:53,640 --> 00:02:54,760
All right, coming in at number five,

71
00:02:54,760 --> 00:02:57,640
we have another habit that saves me around 15 minutes a day
...
Run Code Online (Sandbox Code Playgroud)

我在使用 ChatGPT 时运气不佳,因为它发现很难按主题进行分段并准确地重新收集开始和结束时间戳。我现在正在探索是否还有其他选择可以做到这一点。

我知道一些 python 库可以实现基于时间序列的主题建模。我还阅读了有关文本平铺作为另一种选择的内容。有哪些选择可以实现这样的结果?

注意:上面的格式 (.srt) 不是必需的。这只是输入是带有开始和结束时间戳的文本内容列表的想法。

python nlp machine-learning openai-api automatic-speech-recognition

3
推荐指数
1
解决办法
2610
查看次数

甚至斐波那契数字总和低于400万 - Python

我在python中尝试第二个Project Euler问题,并想了解为什么我的代码不起作用.

该代码找到了甚至斐波纳契数低于400万的总和

counter = 2
total = 0
while counter <= 4000000:
    if counter % 2 == 0:
        total+= counter    
    counter+= (counter -1)
print total
Run Code Online (Sandbox Code Playgroud)

此代码将输出:2

如果我打印计数器,则输出:4194305

我假设正在执行if语句是一个问题,因为while循环正常运行并且计数器也正确递增.

python math if-statement fibonacci

1
推荐指数
2
解决办法
2万
查看次数

Haskell - Ord的意思是什么?

我在Haskell中创建一个递归的合并排序函数.作为评估的一部分,我被告知必须将类型定义为:

isort :: Ord a => [a] -> [a]
Run Code Online (Sandbox Code Playgroud)

我假设函数需要一个数组作为输入并输出一个数组.我知道那ord是一堂课.

在上面的上下文中是什么Ord a意思?

这是我的功能:

isort :: Ord a => [a] -> [a]
isort [x] = [x]
isort (x:xs) = insert x (isort xs)
    where
        insert :: Int -> [Int] -> [Int]
        insert a [] = []
        insert a (b:c) | a < b      = a:b:c
                       | otherwise  = b : insert a c
Run Code Online (Sandbox Code Playgroud)

当我尝试将我的函数文件加载到ghci时,我收到错误:

Couldn't match type ‘a’ with ‘Int’
  ‘a’ is a rigid type variable bound …
Run Code Online (Sandbox Code Playgroud)

haskell types

1
推荐指数
1
解决办法
3273
查看次数