-
Notifications
You must be signed in to change notification settings - Fork 36
Adventofcode (2023.2.10)
Eugene Kim edited this page Feb 11, 2023
·
14 revisions
- Wayne
- 문제 두 개나 풀었다
- 딱히 없다
- 잘 쉬고 오겠다
- 통구이
- 문제를 다 풀 수 있었다
- 스칼라 내장 함수를 잘 모르겠다
- 잘 쉬다 오겠다
- 성큼이
- 문제 둘 풀었다
- 좀 참석이 늦었다
- 일 열심히 하다 오겠다
- 유진
- 한 문제라도 풀었다
- 별로 없다
- 별 일 없으면 참석하겠다
- 유진
- 못 풀었던 day04 문제를 풀었다.
- sliding(3, 3)을 사용했는데 grouped(3)이라는 간단한 표현이 있는 걸 알았고, 내부에서는 같은 일을 한다는 걸 알았다.
- 다른 풀이 예를 찾아보던 중 scala.util.chaining._ 의 pipe 오퍼레이션을 알게 됐고, 이런 체이닝 펑션은 map 같이 원소를 다루는 오퍼레이션이 아니라 객체 자체를 다루는 오퍼레이션이라는 것을 알았다. 그리고 성능상 약간의 이점이 있다고 한다.
import scala.util.chaining._
def part1_2(data: InputType): Int =
data
.map(line => line
.splitAt(line.length / 2)
.tap(println)
.pipe((l, r) => l.toSet.intersect(r.toSet).head))
.map(toInt)
.sum