TIL/알고리즘 공부

백준 8958번 Swift 알고리즘 연습

여의도사노비 2022. 5. 26. 18:38
728x90

애플 아카데미 플젝 시작 전엔  항상 내 개인시간에 해야할 것들을 정리하곤 하는데... 막상 플젝 시작하면 항상 뒷전이 되는 것 같다..!

오늘부터는 주 1회 알고리즘 도전이다.

 

* 8958번

 

이번 문제는 오래 걸렸다..

  • 첫 번째로 문제를 제대로 안읽어서 입력에 나오는 OOOXXX 들이 랜덤으로 생성 되어야하는 줄 알았다.
  • 그래서 for, append, randomElements 등을 사용해서 0~80자리의 OOOXXX 를 만드는데 많은 시간을 사용했다...
  • readLine()을 Int나 String이 아닌 Array로 감싸본 것은 처음인데 찾아서 사용하다보니 어떤 느낌으로 사용할지 감이 왔다.
  • 다른 분들의 풀이를 참고해보니 map과 reduce를 사용하여 O의 값을 찾은 분들이 많은 것 같다. 특히 Closure를 이용하여 3~4줄 이내로 알고리즘을 짠 분은 진짜 찐개발자구나 싶었다...
  • 추후 고차함수 공부를 빡시게 해야겠다!

 

 

정리(Today I Learned)

  1. readLine을 Array 타입으로도 감쌀 수 있음
  2. reduce, map, filter는 고차함수로 분류된다. 필독할 것!