Fork me on GitHub
#clojure-italy
<
2017-09-11
>
skuro08:09:10

buon lunedi!

skuro08:09:58

new w-e stavo giocherellando col problema della trapped water, visto che su rosetta code mancava la soluzione in clojure

skuro08:09:12

rosetta code e' down al momento, comunque il problema e' http://www.geeksforgeeks.org/trapping-rain-water/

skuro08:09:47

volevo vedere cosa veniva fuori dalla mente collettiva dei clojurians italiani a riguardo 🙂

mdallastella08:09:52

@skuro uh uh, adoro questi "problemi"

mdallastella08:09:35

ma prima di sera non credo riuscirò a buttar giù qualcosa

mdallastella08:09:41

resisterò alla tentazione di guardare la tua soluzione 😉

skuro09:09:02

e' tutto nato dalla discussione su linkedin riguardo a questo paper https://drive.google.com/file/d/0B59Tysg-nEQZSXRqVjJmQjZyVXc/view

nilrecurring09:09:25

È un paper un po’ strano

nilrecurring09:09:47

Mi sembra un po’ flame-y

skuro09:09:39

e' decisamente molto troll-ey

skuro09:09:17

non puoi scrivere un paper dove usi l'aggettivo "hipster" per descrivere una qualsivoglia tecnologia e pretendere di essere preso sul serio

mdallastella09:09:53

@skuro sbaglio o hai compiuto gli anni di recente?

reborg09:09:05

c'e' molta OO nostalgia questi giorni... non sono sicuro del perche'

skuro09:09:39

@mdallastella ci dev'essere un qualche glitch in the matrix, sei il secondo oggi che arriva un giorno in anticipo 🙂

mdallastella09:09:11

@skuro, ok, lo schedulo per domani 😄

reborg09:09:25

probabilmente i vari ex-consulenti OO faticano a trovare 🙂

reborg09:09:43

@skuro mi spiace, ma se la matrix dice oggi e' oggi. Spostalo!

skuro09:09:01

ancora non ho individuato il servizio caino

skuro10:09:07

ho provato a cercare e ho fallito 😕

mdallastella12:09:38

Fallire è esperienza

reborg16:09:52

bisogna che la smettiamo con gli algoritmini in ore ufficio 🙂

mdallastella19:09:50

Istituiamo il Saturday Night Algorithm!

reborg19:09:00

eccoci:

(defn trappable [specs]
  (letfn [(unit [s]
            (take (apply max specs)
                  (concat (repeat s 0) (repeat 1))))
          (trim [row]
            (drop-while
              (complement zero?)
              (reverse (drop-while (complement zero?) row))))]
    (->> specs
      (map unit)
      (apply map list)
      (mapcat trim)
      (reduce +))))

(trappable [3 0 0 2 0 4]) ; => 10
(trappable [0 1 0 2 1 0 1 3 2 1 2 1]) ; => 6

reborg19:09:22

ho giusto aperto ora quella di @skuro ... complimenti, sembra impossibile in cosi' poche righe 🙂