目前我正在解决这个问题 " https://www.hackerrank.com/challenges/fp-sum-of-odd-elements"
这是我的代码
(fn func[lst]
((fn sumOdd[sum, index]
(if (< index (.size lst))
(do
(if (= (mod (get lst index) 2) 1)
(do
(sumOdd (+ sum (get lst index)) (+ index 1))
)
(do
(sumOdd (+ sum 0) (+ index 1))
)
)
)
sum
)
)0 0)
)
在HackerRank中,它假设使用list作为输入参数调用匿名函数,但是,我的代码根本不生成任何内容,但它在我的机器上本地生成。我在HackerRank上尝试了以下代码:
(fn [lst] lst)
并确实将输出生成为lst
。我在这里做错了什么让我的代码普遍不一样?
答案 0 :(得分:1)
到目前为止,我在您的解决方案中发现了一个错误。
问题陈述不保证解决方案函数的第一个参数正确响应get
函数。
get
函数会返回nil
。(get '(1 2 3) 1) ;=> nil
答案 1 :(得分:0)
试试这个
{name}_{repetition}:0