你好!如果这个论坛不是启动这个主题的正确地方,我很抱歉,但我刚接触 Clojure/lisp,并想借此机会挑战自己学习。
所以我开始了第 1 天,并解决了这个问题(从本质上讲,给定一个由空格分隔的长数列,找到它们中的最大和),但是看起来这种方法在 Clojure 中可能并不是最优雅的。
例如,以下内容的答案应为 300
10
20
100
200
我的解决方案如下,我主要想知道
- 作为一个初学者,我的这种方法是否合理,我还缺少哪些更优雅的点。
- 如何格式化这样的行?
(以下为剧透,供感兴趣的人参考)
(require '[clojure.string :as str])
(reduce max (map (fn [x] (reduce + (map #(Integer/parseInt %) (str/split x #"\n")))) (str/split (slurp "./input-1.txt") #"\n\n")))
我希望在有时间的情况下,能继续这个月的学习之旅,希望在挑战变得复杂时也能应对,但对于熟悉的语言来说,挑战已经足够复杂了,但可以说,REPL 真的是一个神奇的东西。