생성일: 2019년 11월 03일
수정일: 2023년 10월 17일

4clojure - Pack a Sequence (31)

  1. 문제
  2. 풀이

문제

(= (__ [1 1 2 1 1 1 3 3]) '((1 1) (2) (1 1 1) (3 3)))

(= (__ [:a :a :b :b :c]) '((:a :a) (:b :b) (:c)))

(= (__ [[1 2] [1 2] [3 4]]) '(([1 2] [1 2]) ([3 4])))

풀이

partition-by list

해답이 간단하게 되어 있는 것을 보니 몇번 수정을 거쳐서 만들어낸 답이라고 생각한다. 문제를 보고 해결을 하는데 있어서 세부적인 방법 즉, 다른 값이 나올때 앞의 값들을 묶는다로 생각을 하는 방법이 있겠지만 같은 값을 묶는다로 생각하는 방향으로 점점 생각을 바꿔나가야 한다고 생각한다. partition-by가 그러한 함수이고, list로 변환까지 하는 방법으로 사용을 했다.

Tags: 4clojure Today I Learn